php - 同时从两个表中检索数据,其中一个表引用另一个表

标签 php mysql join

我有两个表如下:

表 1:

ID Code Detail
1  45   Yes
2  46   No

和表 2:

Code Detail1 Detail2
45   No    23
22   Yes   34

是否可以选择所有FROM TABLE 2,其中详细信息 = YES 并且表 1 包含代码并显示"is"

即查询结果应为:

Code Detail Detail
45   No     23
22   Yes    34

谢谢。

最佳答案

SQL fiddle :http://sqlfiddle.com/#!2/6f583/9

SELECT
    Table2.Code,
    Table2.Detail1,
    Table2.Detail2
FROM
    Table1,
    Table2
WHERE
    Table1.Detail = "Yes" OR
    (Table2.Detail1 = "Yes" AND
    Table1.Code = Table2.Code)

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

SQL fiddle :http://sqlfiddle.com/#!2/6f583/12

SELECT
    Table2.Code,
    Table2.Detail1,
    Table2.Detail2
FROM
    Table1,
    Table2
WHERE
    (Table1.Code = Table2.Code AND
    Table1.Detail = "Yes") OR
    Table2.Detail1 = "Yes"
GROUP BY
    Table1.ID

关于php - 同时从两个表中检索数据,其中一个表引用另一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16900717/

相关文章:

php - 如何拆分行并以大 .CSV 文件导入数据库

mysql - JOIN 语句中双嵌套派生表中的未知列

mysql - sql中两个不同表的总和之差

php - 哪些字符与 PHP 的 PCRE 中的完全匹配?

php - 使用 PHP 制作的 HTML 下拉列表以及 MySQL 数据库中的数据

php - laravel 无法打开流 : No such file or directory error

mysql - 是否有保存有关 MySQL 表的额外信息的标准?

php - 多个日期之间的小时数总和

SQL查询从表中获取不存在的记录

php - 使用左连接查询创建列