我試圖通過查找它在MYSQL中收到的upvotes和downvotes的數量之間的差異來運行SELECT (SELECT COUNT(vote_id) AS vote_up FROM
票WHERE vote='UP'),(SELECT COUNT(vote_id) AS vote_down FROM
票WHERE vote='DOWN'),(vote_up - vote_down AS vote_score)
。當我嘗試運行它時,它告訴我,我沒有正確的語法。我究竟做錯了什麼?獲取兩個子查詢的計數之間的差異
另外,有沒有更好的方式來寫這個?
最後,什麼是找到具有最高和最低票數的項目的理想方式?我只是ORDER BY [above query]
?
+1但是,您將因缺少「GROUP BY」子句而發生錯誤。 – 2011-02-05 02:38:25
哇,謝謝!這工作完美。你的文章是一個很好的閱讀,雖然我通常不處理很長的查詢... – nickles 2011-02-05 02:52:19
@ The Scrum Meister:你說得對。固定。我最希望的SQL是,如果我沒有一個GROUP BY,它會找出它應該基於我的SELECT ... – btilly 2011-02-05 03:16:08