這裏是我的查詢mysql命令通過與工會重複結果
(SELECT *, 1 as ob FROM `jokes` WHERE `flags` < 5 AND (`title` LIKE "%only three doors%" OR `joke` LIKE "%only three doors%"))
UNION
(SELECT *, 2 as ob FROM `jokes` WHERE `flags` < 5 AND (`title` LIKE "%only%" OR `joke` LIKE "%only%"))
UNION
(SELECT *, 3 as ob FROM `jokes` WHERE `flags` < 5 AND (`title` LIKE "%three%" OR `joke` LIKE "%three%"))
UNION
(SELECT *, 4 as ob FROM `jokes` WHERE `flags` < 5 AND (`title` LIKE "%doors%" OR `joke` LIKE "%doors%"))
ORDER BY `ob` ASC, `ups` DESC,`downs` ASC LIMIT 0, 30
現在我的這個問題是我得到重複的結果。有沒有辦法修改這個,所以我不會重複。
選擇的順序比起起落落更重要。
我還想指出,選擇語句的數量會發生變化。
看起來沒問題,直到標誌狀態之後的部分。這甚至是必要的嗎? – 2011-12-31 03:49:38
另外,如果它不能滿足案件中的任何條件,我不希望它。因此,擁有else 4語句將只抓取其餘的行不會,並將它們添加到最後?我可以把這條線拿出來嗎? – 2011-12-31 04:17:45
'ELSE 4'適用於'title LIKE'%doors%'或笑話LIKE'%doors%''的情況 – 2011-12-31 10:53:04