我想建立一個系統,其中有線程和職位。我正在嘗試獲取最受歡迎的線索(用戶可以點擊「喜歡」按鈕使其更受歡迎),並擁有最多的帖子。問題是要通過大多數帖子排序結果......然後通過喜歡帖子。T-SQL排序結果與計數()優先
因此,舉例來說,如果我有300發的帖子,和200只喜歡一個線程..而另一個線程已經得到了300個喜好和201個likes..I想選擇第二個帖子..
表結構概括地說:
topic:
--------
topic_id
liked
comment:
-------
comment_id
topic_id
這是到目前爲止我的存儲過程:
dbo.Trends
AS
SELECT TOP 1 title, COUNT(com.topic_id), COUNT(topc.user_id_liked)
FROM comment AS com
INNER JOIN topic AS topc ON com.topic_id=topc.topic_id
GROUP BY com.topic_id, topc.user_id_liked,title
ORDER BY COUNT(com.topic_id), COUNT(topc.user_id_liked) DESC
我不知道如果我是對的,否則我將不得不結果控制流邏輯。我在主題表中放置topic_id,然後在order statement中的topic喜歡的列之前。希望topic_id的選擇/排序將優先。
已更新:查詢已更新。
你使用的是什麼版本的sql-server? – Arion 2012-04-27 09:04:59
@Dmitry Makovetskiyd - 你認爲'topic_id'優先。快速測試會告訴你,:) :) – 2012-04-27 09:05:37
我正在使用visual studio 2010 ...我正在構建存儲過程..我沒有數據.. vs2010有sql express 2008(內置) – 2012-04-27 09:10:17