gpt4 book ai didi

MySQL查询结果说明

转载 作者:行者123 更新时间:2023-11-29 09:02:01 26 4
gpt4 key购买 nike

非常简单的问题:为什么以下 SQL 的输出不为 null?

SELECT * FROM table WHERE 
(`FirstName` LIKE 'D%' OR `LastName` LIKE 'D%' OR `City` LIKE 'D%')
AND
(`FirstName` NOT LIKE 'D%' OR `LastName` NOT LIKE 'D%' OR `City` NOT LIKE 'D%')

我使用的是 MySQL 5.1。结果是忽略“不喜欢”部分。

最佳答案

如果您的 FirstName 为“David”,则第一个括号条件为 true。如果您的 LastName 为“Smith”,则第二个括号条件为true 并且您的查询将返回该结果。

您可能想做的是这样的:

SELECT * FROM table WHERE 
(`FirstName` LIKE 'D%' OR `LastName` LIKE 'D%' OR `City` LIKE 'D%')
AND
(`FirstName` NOT LIKE 'D%' AND `LastName` NOT LIKE 'D%' AND `City` NOT LIKE 'D%')

(请注意 OR 已更改为 AND。)

关于MySQL查询结果说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8322406/

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