大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
有2个办法,第一种直接使用sql的多表联查,效率高,但是得到的数据table1会被扩展成table2一样的条目数 要再次处理
我们提供的服务有:成都网站建设、网站设计、微信公众号开发、网站优化、网站认证、通道ssl等。为数千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的通道网站制作公司
select * from table1 a,table2 b where a.orderid = b.orderid
第二种方法,先得到table11的数据,在循环中匹配table2到一个新的列名中
$conn = mysqli_connect("127.0.0.1", "root", "123", "test");
$sql = "select * from table1";
$rs = mysqli_query($conn, $sql);
$Arr = array();
while ($row = mysqli_fetch_assoc($rs)) {
$sql = "select * from table2 where orderid =" .$row["orderid"];
$row["order_sku"] = mysqli_fetch_all(mysqli_query($conn, $sql), MYSQLI_ASSOC);
$Arr[] = $row;
}
print_r($Arr)
如果你是刚开始学php 建议直接抛弃mysql用mysqli 因为PHP5.5已经废弃mysql方法了
php 把数据导出到excel表格有多种方法,比如使用 phpExcel 等,以下代码是直接通过 header 生成 excel 文件的代码示例:
?php
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:filename=xls_region.xls");
$cfg_dbhost = 'localhost';
$cfg_dbname = 'testdb';
$cfg_dbuser = 'root';
$cfg_dbpwd = 'root';
$cfg_db_language = 'utf8';
// END 配置
//链接数据库
$link = mysql_connect($cfg_dbhost,$cfg_dbuser,$cfg_dbpwd);
mysql_select_db($cfg_dbname);
//选择编码
mysql_query("set names ".$cfg_db_language);
//users表
$sql = "desc users";
$res = mysql_query($sql);
echo "tabletr";
//导出表头(也就是表中拥有的字段)
while($row = mysql_fetch_array($res)){
$t_field[] = $row['Field']; //Field中的F要大写,否则没有结果
echo "th".$row['Field']."/th";
}
echo "/tr";
//导出100条数据
$sql = "select * from users limit 100";
$res = mysql_query($sql);
while($row = mysql_fetch_array($res)){
echo "tr";
foreach($t_field as $f_key){
echo "td".$row[$f_key]."/td";
}
echo "/tr";
}
echo "/table";
?
用联合查询就可以实现
一般包括左外连接,右外连接和内连接
可以用on设置每两个表之间的关联关系,查询后遍历输出到页面就可以了