指定联合条件列和排除列,其中多次

vmjh9lq9  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(300)

我使用的是mysql,不能多次指定特定的列。我知道下面的代码是错误的,但这是为了更好地理解我正在尝试做什么。
注:id\u follow\u book=身份证簿
我需要在同一个查询中指定 id_follow_book 在特定章节中选择一些id。有了它对我没有帮助,因为我会选择id来很好地跟踪书籍,但是我不会为每个后续选择正确的章节。存在这样一种可能性,即用户没有关注一本书或一个id\u follow\u book,甚至可能没有。我要返回的是用户所跟随的那些。

SELECT id_follow_book, num_chapt
FROM Follow, Chapters
WHERE id_user = 1 AND
id_follow_book = id_chapter_book AND
(id_follow_book = 15 AND num_chapt = (10+1)) AND/OR
(id_follow_book = 25 AND num_chapt = (5+1)) AND/OR
(id_follow_book = 30 AND num_chapt = (23+1))

和数是变量。我也试过了,但没有成功。谢谢,对不起我的英语。

Follow                                      Chapters

id_follow_book   id_user                 id_chapter_book   num_chapt
    30                1                       30              6
    25                1                       30              5
    13                1                       30              4
    21                1                       25             24
                                              25             23

预期结果:

id_follow_book    num_chapt  (this is last viewed chapt of user, this solutioned) 
    30                  6
    25                 24
bzzcjhmw

bzzcjhmw1#

尝试在运算符中使用:

SELECT id_follow_book, num_chapt
FROM Follow inner join Chapters on 
id_follow_book = id_chapter_book 
WHERE id_user = 1 AND 
id_follow_book in( 15,25,30) AND num_chapt in(11,6,24)

相关问题