首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

[转]sql中Distinct、Group by、having、order by应用注意事项

2012-12-29 
[转]sql中Distinct、Group by、having、order by使用注意事项?SELECT DISTINCT 中使用 ORDER BY注意事项:SELE

[转]sql中Distinct、Group by、having、order by使用注意事项

?


SELECT DISTINCT 中使用 ORDER BY注意事项:

SELECT DISTINCT BOOKID FROM BOOK ORDER BY BOOKNAME

以上语句将报:

--如果指定了SELECT DISTINCT,那么ORDER BY 子句中的项就必须出现在选择列表中。


因为以上语句类似

SELECT BOOKID FROM BOOK GROUP BY BOOKID ORDER BY BOOKNAME

其实错误信息也为:

--ORDER BY子句中的列"BOOK.BookName" 无效,因为该列没有包含在聚合函数或GROUP BY 子句中。


应该改为:SELECT DISTINCT BOOKID,BOOKNAME FROM BOOK ORDER BY BOOKNAME


SELECT DISTINCT BOOKID,BOOKNAME FROM BOOK

SELECT BOOKID,BOOKNAME FROM BOOK GROUP BY BOOKID,BOOKNAME


以上两句查询结果是一致的,DISTINCT的语句其实完全可以等效的转换为GROUP BY语句

热点排行