SELECT * FROM HT_News
LEFT JOIN HT_NewsCategories ON HT_News.Category1=HT_NewsCategories.CategoryId
WHERE Top1=1 AND Status=1 AND HT_NewsCategories.ParentCategoryId=0
这个把符合条件的都显示了,我希望每个条件ParentCategoryId=0的类只显示一条新闻。
------解决方案--------------------
给出具体的表结构。
------解决方案--------------------
- SQL code
;with f as(SELECT * FROM HT_News LEFT JOIN HT_NewsCategories ON HT_News.Category1=HT_NewsCategories.CategoryIdWHERE Top1=1 AND Status=1 AND HT_NewsCategories.ParentCategoryId=0)select * from f t where 显示N条的字段=(select min(显示N条的字段) from f where Category1=t.Category1)
------解决方案--------------------
- SQL code
; with maco as(SELECT * FROM HT_News LEFT JOIN HT_NewsCategories ON HT_News.Category1=HT_NewsCategories.CategoryIdWHERE Top1=1 AND Status=1 AND HT_NewsCategories.ParentCategoryId=0)select * from maco twhere id=(select min(id) from maco where 类名字段=t.类名字段)--id指的是结果中的唯一列,就是不重复的列,可以标识为某一行的。