mysql查询多表,显示array(0) { },为什么没有返回数据??

以下是查询语句,是不是语法有问题??还是其他问题,什么都没有返回,通过var_dump打印出来也是array(0) { },没有返回数据。

目的是查询7个表,其中这7个表都是相同字段。通过传name参数进来然后查询这个name的值在哪个表,然后从哪个表里返回数据。

SELECT num_ber_1.name,num_ber_2.name,num_ber_3.name,num_ber_4.name,num_ber_5.name,num_ber_6.name,num_ber_7.name FROM num_ber_1 , 
            num_ber_2 ,
            num_ber_3 ,
            num_ber_4 ,
            num_ber_5 ,
            num_ber_6 ,
            num_ber_7 where num_ber_1.name='".$name."' or num_ber_2.name='".$name."' or num_ber_3.ename='".$name."' or num_ber_4.name='".$name."' or num_ber_5.name='".$name."' or num_ber_6.name='".$name."' or num_ber_7.name='".$name."'
阅读 2.6k
2 个回答

连表查询

select name,'table1' as table_name from table1 where name='aaa'
union all
select name,'table2' as table_name from table2 where name='aaa'
union all
select name,'table3' as table_name from table3 where name='aaa' 

image.png

查询之后将会得到七个属性,根据命名规则就可以判断出是哪个表了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题