扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
比如联合A B俩表\x0d\x0a\x0d\x0aselect a.*,b.* from A as a left join B as b on a.id = b.id where a.name='lileiand b.age=27 order by a.id group by a.class limit 10 ;\x0d\x0a\x0d\x0a很简单
创新新互联,凭借十多年的成都网站建设、网站制作经验,本着真心·诚心服务的企业理念服务于成都中小企业设计网站有超过千家案例。做网站建设,选成都创新互联公司。
至少三个方法可以实现:
一、使用视图来实现多表联合查询,
例如:创建视图:create view userstoposts as select u.name,u.qq,p.post_id,p.title, p.contents, p.contents from users as u,posts as p where u.name=p.name
二、直接使用表联合查询
例如:select u.name,u.qq,p.* from users as u,posts as p where u.name=p.name
三、结合PHP语言实现
例:1、
?php
$Sql="select *from posts";
$Result=@mysql_query($Sql);
while($rows=mysql_fetch_assoc($Result)){
$sql1="select name,qq from users where name='".$rows['name']."'";
$result1=@mysql_query($sql1);
$rows1=mysql_fetch_assoc($result1);
$OUTPUT[]=array(
'name'=$rows['name'],
'qq'=$rows1['qq'],
'post_id'=$rows['post_id'],
'title'=$rows['title'],
'contents'=$rows['contents']
);
}
print_r($OUTPUT);//可以你需要的结果输出
?
用联合查询就可以实现
一般包括左外连接,右外连接和内连接
可以用on设置每两个表之间的关联关系,查询后遍历输出到页面就可以了
你说的是数据库,还是数据表啊。
如果是数据表的话,可以用连接查询。
select a.id,a.username,b.id as bid b.title from 表A a left join 表B b on a.id=b.id
这样就可以了,如果是两个数据库,那就比较麻烦,要创建两个连接对象。再分别打开两个表。再操作。
SELECT a.A表字段名, b.B表字段名 FROM A表名 a LEFT JOIN B表名 b WHERE 条件自己写,例如(a.字段名 != '' ) ON a.字段名 = b.字段名
这种联合查询的限制是ab2表必须有一个相同的关键字,且相等
楼下几位都对。但是你这表其实不太合理,两张表的关联有问题。因为商家名可能相同,建议你加个字段shangjiaID 。table1 和table2中都有,且唯一。然后用左链接。left join 。不明白啥意思可以去百度下。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流