gpt4 book ai didi

php - 在 MySQL 中使用 OR 和 AND

转载 作者:可可西里 更新时间:2023-11-01 07:49:48 26 4
gpt4 key购买 nike

我有一个查询如下:(节目是一个包含电视节目和 IMDB ID 的表,recommended_titles 是一个包含两列和 IMDB_ID 的表)

Select t2.* from shows t, shows t2, recommended_titles WHERE 
t.imdb_id = recommended_titles. title_id_1
AND recommended_titles.title_id_2=t2.imdb_id
AND t.imdb_id = 0367279 LIMIT 7

查询很好,但我意识到它只是在第一列中检查我的 imdb id,而它也可以出现在我的第二列中。所以我尝试添加以下内容:

OR
recommended_titles.title_id_2=t.imdb_id
AND t.imdb_id = recommended_titles. title_id_1
AND t.imdb_id = 0367279 LIMIT 7

但是显然OR不能和AND一起使用,

我应该如何做有什么建议吗?

编辑:为了解释我想做什么,这里有一个简单的例子,以防我上面的解释太困惑。表格显示有这样的行:

name of a tv show | 00001
name of another | 00002
name of another | 00003

表格推荐的标题有(注意ID可以在任意一列)

00001 |  00002
00002 | 00003

最佳答案

你可以看看operator precedence在 mysql 中(并且看到 AND 的优先级高于 OR),或者使用括号(更易于使用和维护)

(t.imdb_id = recommended_titles.title_id_1 OR
recommended_titles.title_id_2=t.imdb_id)

AND recommended_titles.title_id_2=t2.imdb_id
AND t.imdb_id = 0367279 LIMIT 7

关于php - 在 MySQL 中使用 OR 和 AND,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16979596/

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