50分,求一個SQL語句。。。。。

2023-03-19 02:40:02 字數 1073 閱讀 3173

1樓:匿名使用者

lz你這sql錯的很嚴重啊。。。先確定這三張表的關係。

如果是你可以這樣寫。

select [category].[name],[news].[id],[news].[title], count(*)

from [news] leftjoin [category] on [news].[categoryid] =category].[id]

left join [comment] on [comment].[newsid]=[news].[id]

group by [category].[name],[news].[id],[news].[title],[comment].[newsid]

order by [news].[time] desc

2樓:

試試下面這個行不行:

select c.[name],n.[id],n.[title], count(*)

from [news] n inner join [category] c on n.[categoryid] =c.[id] left outer join [comment] c

on c.].newsid]=n.[id]group by c.[name],n.[id],n.[title],c.[newsid]

order by n.[time] desc

3樓:傳奇勇者

where [news].[categoryid] =category].[id] and [comment].[newsid]=[news].[id]

這兒不要用相等,用表的左聯,意思就是左邊所有符合條件的標題會查詢出,右邊表有的就會顯示, 具體的語法記不清了,用的較少。

4樓:網友

select catname=(select name from category where id=categoryid),id,title,count=(select count(*)from comment where newsid=id)

from news

是要這樣的結果麼。