php - MYSQL SELECT JOIN 带条件

标签 php mysql

我正在处理一个棘手的查询,只是不明白如何处理它,因为两个 JOIN 都没有给我带来理想的结果。

我有两个表:

Table1:
id
value

Tabel2:
id
table1_id
parameter (1,0)
value

我需要从 Table_1 中选择所有内容,但如果 Table2 中有一行 table1_id = table1.id 且参数 = 1,我想在结果中包含 table2.value。注意,Table2中table1_id = table1.id可以有多行,但parameter=1只能有一行。

所以,我希望得到什么结果

table1.id | table1.value | table2.parameter |table2.value
    1     |      v1      |                  |      
    2     |      v1      |         1        |      v2
    3     |      v1      |                  |      
    4     |      v1      |         1        |      v2

有人可以帮我解答疑问吗?感谢您抽出时间。

最佳答案

SELECT *
FROM
  Table1 LEFT JOIN Table2
  ON (Table1.id = Table2.table1_id AND Table2.parameter = 1)
;

关于php - MYSQL SELECT JOIN 带条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32582664/

相关文章:

javascript - 在 JQuery 文件中获取 WordPress 帖子 ID

php - Parse Server - 如何在 Heroku 上启用 REST API key

php - 使用 Paypal 付款提高安全性

php - 使用 Codeigniter 框架缓存 REST api

mysql - Mysql根据条件INSERT INTO

php - Prestashop 实际数量与实物数量不同

php - 完全禁用 phpMyAdmin 中的导航树

mysql - 简单的mysql查询计数失败

mysql - 一个查询中的两个选择

python - 字符串插值导致 MysqlDB 错误