【发布时间】:2016-06-01 10:27:16
【问题描述】:
我有 3 个 MySQL 表来检索它们的数据。
table1 包含以下行:
id | name | total_amount | product_id | date
---------------------------------------------
1 | some name | some amount | some pid | some date
2 | some name1 | some amount1 | some pid1 | some date1
3 | some name2 | some amount2 | some pid2 | some date2
4 | some name3 | some amount3 | some pid3 | some date3
和表2:
product_id | product_name
-------------------
some pid | some product name
some pid1 | some product name1
some pid2 | some product name2
some pid3 | some product name3
和表3:
id | total_amount | product_id
-------------------------------
1 | some amount | some pid
2 | some amount2 | some pid2
我在 table1 和 table 2 之间使用内部联接及其 product_id 来列出如下值:
name | total_amount | product_id | product_name | date
--------------------------------------------------
some name | some amount | some pid | some product name | some date
some name1 | some amount1 | some pid1 | some product name1 | some date1
some name2 | some amount2 | some pid2 | some product name2 | some date2
some name3 | some amount3 | some pid3 | some product name3 | some date3
但是,如果 table3 的 total_amount 和 product_id 与 table1 的 total_amount 和 product_id 具有相同的值,我不想在连接表列表中显示行。
所以我希望我的输出是这样的:
name | total_amount | product_id | product_name | date
--------------------------------------------------
some name1 | some amount1 | some pid1 | some product name1 | some date1
some name3 | some amount3 | some pid3 | some product name3 | some date3
是否可以使用 SQL Query 执行此操作,或者我应该尝试使用我的客户端语言 PHP 执行此操作?
【问题讨论】:
-
Join Query在哪里?应该是table3 join colum IS NULL