php - 我可以用 MySQL 做到这一点,还是需要让 PHP 参与进来?

标签 php mysql

我有两个结构相似的 MySQL 表。即

Table_A - Col1, Col2, Col3, Col4, Col5

Table_B - Col1, Col2, Col3

我需要运行一个类似这样的查询:

SELECT * FROM Table_A WHERE (Table_A.Col1 DOES NOT EXISTS in Table_B.Col3 AND Table_B.Col2 = 'A') AND Table_A.Col5 = 2 etc...

所以基本上我需要从 A 中选择不在 B 中的所有内容,其中 B 有额外条件。

希望以下示例对您有所帮助:

Table_A 示例行

1, 5, 'Orange', 'Elephant', 1
2, 3, 'Red', 'Horse', 2
3, 4, 'Blue', 'Rhino', 2
4, 4, 'Pink', 'Cat', 2
5, 2, 'Purple', 'Dog', 2

Table_B 示例行

1, 'A', 3
2, 'A', 2
3, 'B', 2
4, 'C', 3

我需要的返回数据是 - 我正在查询 Table_A 中的所有行(不在 Table_B AND Table_B.Col2 = 'A')和 Table_A.col5 = 2

4, 4, 'Pink', 'Cat', 2
5, 2, 'Purple', 'Dog', 2

有什么想法吗? 谢谢!

最佳答案

SELECT A.* FROM table_A AS A
LEFT JOIN Table_B AS B ON A.Col1 = B.Col3
WHERE B.Col3 IS NULL AND B.Col2 = 'A' AND ...

关于php - 我可以用 MySQL 做到这一点,还是需要让 PHP 参与进来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3385886/

相关文章:

php - 奇怪的 PHP 字符集问题?

javascript - 无法使用 PHP 显示警报消息

php - 截断字段 Php 的输出

php - 在电子邮件中设置回复字段

c# - MySql 传递参数给出不同的结果

mysql - 在同一列上使用多个WHERE条件进行选择

php - 如何回显 DOMNodeList 对象和 DOMElement 对象?

php - jQuery 函数仅在再次包含时起作用——两次(导致其他冲突)

php - 多个列表框值未使用 PHP 插入 MySQL 数据库

java - 将android应用程序连接到服务器上的数据库?