看板 Database 關於我們 聯絡資訊
※ 引述《z77819 (Qoo離開合了)》之銘言: : 我是用 Microsoft SQL Server 2005, : 資料庫有建兩張 Table, : EIP_Forum_Thread(ThreadID, ForumID, title, ViewCount) : EIP_Forum_Posts(PostID, ThreadID, body, AddedDate, AddedBy) : Thread存主題, Posts存回覆的資料 : 我想要做 JOIN 撈出某個版所有主題 : 我的SQL指令 : SELECT DISTINCT EIP_Forum_Posts.ThreadID, EIP_Forum_Thread.title, : EIP_Forum_Thread.ViewCount, EIP_Forum_Posts.AddedDate, : EIP_Forum_Posts.AddedBy : FROM EIP_Forum_Posts INNER JOIN EIP_Forum_Thread ON : EIP_Forum_Posts.ThreadID = EIP_Forum_Thread.ThreadID : WHERE (EIP_Forum_Thread.ForumID = @fid) 沒有範例資料用猜的: 假設首po的 PostID在同 ThreadID裡是最小的 EIP_Forum_Thread 的 key是 ThreadID EIP_Forum_Posts 的 key是 PostID 翻譯成SQL大概是這樣: select * from EIP_Forum_Thread a join EIP_Forum_Posts b on a.ThreadID=b.ThreadID and b.PostID =( select min(postid) from EIP_Forum_Posts c where c.ThreadID=a.ThreadID ) 大概能跑吧.... : 如果文章沒人回覆就沒有問題,可是有的話就會連回覆的文章標題一起出來 : 請問該怎麼修改OK?? : 一開始是想用Group by去做,可是沒辦法執行,不過在MY SQL卻可以 Group by不是這樣用的吧 : 我的SQL指令~ : SELECT * : FROM EIP_Forum_Posts INNER JOIN EIP_Forum_Thread ON : EIP_Forum_Posts.ThreadID = EIP_Forum_Thread.ThreadID : WHERE (EIP_Forum_Thread.ForumID = @fid) : GROUP BY EIP_Forum_Thread.ThreadID -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.229.205.173
z77819:謝謝你喔 成功顯示了 01/09 00:30