【发布时间】:2012-04-05 18:11:33
【问题描述】:
我正试图重新表述我的问题,因为我的最后一个问题并不清楚。
这是我的测试台
+----------+---------+-------+
| rel_id | genre | movie |
+----------+---------+-------+
| 1 | 1 | 3 |
| 2 | 8 | 3 |
| 3 | 3 | 3 |
| 4 | 2 | 5 |
| 5 | 8 | 5 |
| 6 | 3 | 5 |
| 7 | 1 | 8 |
| 8 | 8 | 8 |
| 9 | 3 | 8 |
| 10 | 5 | 9 |
| 11 | 7 | 9 |
| 12 | 9 | 9 |
| 13 | 4 | 9 |
| 14 | 12 | 9 |
| 15 | 1 | 10 |
| 16 | 8 | 10 |
| 17 | 3 | 10 |
| 18 | 5 | 10 |
| 19 | 1 | 11 |
| 20 | 2 | 11 |
| 21 | 8 | 11 |
| 22 | 5 | 11 |
| 23 | 3 | 11 |
+----------+---------+-------+
如果我查找类型为 1、8、3 的电影,结果应按以下顺序排列:电影编号。 3、8、10、5、11(9 出)。
如果不可能,那么我只想要完全匹配“1、8、3”的所有内容,在这种情况下,我只会得到电影编号。 3 和 8。
【问题讨论】:
-
您的查询无效吗?它首先查找具有一种类型的所有电影,然后按电影分组。
-
它似乎按预期工作,电影 5 有类型 8 和 3,但没有类型 1。你的意思是你想要获得所有这些类型的电影吗?
-
@flo 是的,这是正确的,因为在我得到完全匹配的顺序后,我需要输出电影。我只需要这部电影,而不是3倍。希望你理解:D
-
@Matthew Riches 我想得到第一部电影 3 和 8,因为他们得到了类型 1、8、3 的正确类型匹配,最后的结果应该是电影编号。 5 因为这里只是第一个流派不一样,但是第二个和第三个得到了正确的匹配。理解? :)
-
好的,我已经在pastebin 上发布了另一个示例,请记住,我使用 3 种流派作为示例。查询可能在 WHERE 子句中有 5 个流派
标签: mysql sql sql-order-by where-in