select查询(转)
来源:互联网 发布:h5制作软件易企秀 编辑:程序博客网 时间:2024/05/17 08:30
select查询
SQL可以按照多个列来排序,并且用来排序的列不必是select语句要返回的结果列,所以排序列的方式具有很大的灵活性。如果确实需要对数据进行排序,那么就应当利用
ordre by子句来实现它,这是一种好的开发习惯。
(1) 使用列名指定排序顺序
SELECT FirstName,LastName
FROM dbo.Customer
ORDER BY LastName,FirstName
(2) 使用表达式指定排序顺序
SELECT LastName +’,’ +FirstName AS FullName
FROM dbo.Customer
ORDER BY LastName +’,’ +FirstName
在order by子句使用表达式,可以解决一些令人头疼的问题。如:在下面的例子中,如果标题中包含有前导“The”,那么case表达式将把它从标题中去掉,并利用处理以后的结果来排序:
SELECT Title,Len(FableText) AS TextLength
FROM Fable
ORDER BY
CASE
WHEN SubString(Title,1,3)=’The’
THEN SubString(Title,5,Len(Title)-4)
ELSE Title
END
执行结果如下:
Title TextLength
------------------------ ----------------------------------
Androcles 1370
The Ant and the Chrysalis 1087
The Ants and the Grasshopper 456
The Ass in the Lion’s Skin 465
The Bald Knight 360
The Boy and the Filberts 435
The Bundle of Sticks 551
The Crow and the Pitcher 491
… … …
(3) 使用列别名指定排序顺序
在按照表达式排序时应当首选这种方法,因为它使得代码更容易读了。在下面的例子中,不仅使用了这种方法,而且还为其指定了降序的排序方式,而不是默认的升序排序:
SELECT LastName +’,’ +FirstName AS FullName
FROM dbo.Customer
ORDER BY FullName DESC
注意:虽然可以在order by子句中使用别名,但却不能在where子句中使用别名。这是因为在逻辑上where子句是在查询刚开始的时候执行的,此时还没有完成建立结果列及其别名的工作,因而不能使用别名;而order by子句却是最后一步执行的逻辑操作,此时结果列及其别名都已经创建了。
(4) 使用列的位置序号指定排序顺序
我不推荐大家使用这种方法,因为如果在select语句中改变了结果列的排列顺序,order by子句就会按照不同的列进行排序了。但是,我会在复杂的并查询中使用列的序号来指定排序的顺序。如:
SELECT LastName +’,’ +FirstName AS FullName
FROM dbo.Customer
ORDER BY 1
执行的结果如下:
FullName
---------------------------------------------
Adams,Joe
Anderson,Missy
Andrews,Debble
Bettys,Dave
… …
- select查询(转)
- 【转】select查询原理
- Oracle查询(select)
- SQL SELECT(查询)
- 玩转SELECT语句(二)之多表联合查询
- select 查询
- SELECT 查询
- SELECT 查询
- select查询
- SELECT查询
- 查询语句(SELECT)的优化
- SELECT查询的应用(一)
- Select 语句 查询 txt文件(转载)
- 查询语句(SELECT)的优化建议
- 数据库-select查询语句(续1)
- 查询数据表中的记录(SELECT)
- 查询数据表中的记录(SELECT)
- SQL学习(3) 查询 SELECT
- 追随我心的选择
- 为何XMLHttpRequest对象是AJAX的核心
- 使用Atlas简化客户端Ajax编程
- Atlas—微软的Ajax工具包(初学者必看)
- 推荐几个用得上且免费的 .NET控件
- select查询(转)
- 我的AjaxPage对象(Asp.NET 1.1)-借用2.0的Callback实现无刷新回调
- 用户点击Log In按钮后发生了什么?
- 用户点击Log In按钮后发生了什么?(续篇1)
- Sql Server数据库的备份和恢复措施
- Query参数parameter的操作
- FCKeditor 应用
- Asp.net给站点某目录增加Aspnet用户
- web server 错误:Server Application Unavailable