gpt4 book ai didi

mysql - 如何通过检查另一个表来排除一些数据库记录

转载 作者:行者123 更新时间:2023-12-01 00:42:16 25 4
gpt4 key购买 nike

我目前有这个简单的 SQL 语句来提取我们购物车中最后 100 个报价的详细信息:

SELECT
*
FROM
orders
JOIN customers ON orders.CustomerNumber = customers.CustomerNumber
WHERE
STATUS = 'QUOTE'
ORDER BY
orders.OrderNumber DESC
LIMIT 0,
100

我们还有一个“评论”表,有时我们的员工会在其中添加一条固定评论,表明客户不想被联系。我如何修改我的 SQL 以交叉检查评论表以查看是否存在与订单号关联的此类评论?

  • 表名:评论
  • :OrderNumber(用于连接)、CommentText
  • 要查找并从记录集中排除的评论(如果存在):“不要
    联系”

谢谢!

最佳答案

一种选择是使用不存在谓词:

SELECT
*
FROM
orders o
JOIN customers c ON o.CustomerNumber = c.CustomerNumber
WHERE
STATUS = 'QUOTE'
AND NOT EXISTS (
SELECT * FROM comments
WHERE CommentText = 'Do not contact'
AND OrderNumber = o.OrderNumber
)
ORDER BY
o.OrderNumber DESC
LIMIT 0, 100

Sample SQL Fiddle

关于mysql - 如何通过检查另一个表来排除一些数据库记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29511545/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com