好吧,我正在使用MYSQL,我无法多次指定特定的列。我知道以下代码是错误的,但它是为了更好地理解我想要做的事情。
注意:id_follow_book = id book
我需要在同一个查询中指定,从id_follow_book
中选择一些具体的id和一些特定的章节。使用IN对我没有帮助,因为我会选择id来很好地跟随书籍,但是我不会为每个后续选择正确的章节。存在用户没有关注书籍或id_follow_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))
总和数是变量。我也尝试了CASE WHEN,但我没有实现它。谢谢,抱歉我的英语。
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
尝试使用IN运算符:
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)