Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 一次从两个表检索数据,其中一个表引用另一个表_Php_Mysql_Join - Fatal编程技术网

Php 一次从两个表检索数据,其中一个表引用另一个表

Php 一次从两个表检索数据,其中一个表引用另一个表,php,mysql,join,Php,Mysql,Join,我有两个表格如下: 表1: ID Code Detail 1 45 Yes 2 46 No Code Detail1 Detail2 45 No 23 22 Yes 34 和表2: ID Code Detail 1 45 Yes 2 46 No Code Detail1 Detail2 45 No 23 22 Yes 34 是否可以从表2中选择所有,其中detail=YES,表1包含代码并表示YES 即查询结果应为: Code

我有两个表格如下:

表1:

ID Code Detail
1  45   Yes
2  46   No
Code Detail1 Detail2
45   No    23
22   Yes   34
和表2:

ID Code Detail
1  45   Yes
2  46   No
Code Detail1 Detail2
45   No    23
22   Yes   34
是否可以从表2中选择所有,其中detail=YES,表1包含代码并表示YES

即查询结果应为

Code Detail Detail
45   No     23
22   Yes    34

谢谢。

我没有很好地理解您的问题,但这将创建您想要的结果表

select table2.* from table2 left join table1 on table2.code = table1.code where table2.Detail1 = 'Yes' or table1.Detail = 'Yes'

我没有很好地理解你的问题,但这将创建你想要的结果表

select table2.* from table2 left join table1 on table2.code = table1.code where table2.Detail1 = 'Yes' or table1.Detail = 'Yes'
SQL Fiddle:

尽管我上面的查询似乎为您提供了示例的正确结果集,但我认为以下查询更符合您的条件:

SQL Fiddle:

SQL Fiddle:

尽管我上面的查询似乎为您提供了示例的正确结果集,但我认为以下查询更符合您的条件:

SQL Fiddle:


您说过要选择所有,其中detail=yes,但结果示例的detail=No。。。另外,为什么/如何在同一个表中有两个同名字段?是的,它基于第一个表中包含的内容返回,即当
表1
中的数据为“是”且
表1中存在代码时,从第二个表中检索数据,那么在您的示例中,您是如何获得两个结果行的,当表1中只有一行的detail=yes时?因为检索是从第二个表中完成的。表2中有2列
detail
列…请解释。您说过要选择detail=yes的所有列,但结果示例的detail=No。。。另外,为什么/如何在同一个表中有两个同名字段?是的,它基于第一个表中包含的内容返回,即当
表1
中的数据为“是”且
表1中存在代码时,从第二个表中检索数据,那么在您的示例中,您是如何获得两个结果行的,当表1中只有一行的detail=yes?因为检索是从第二个表中完成的。表2中有2列
detail
列…解释一下。