您当前的位置: 首页 > 数据库教程 > MSSQL教程 > SELECT语句中的*号不为人知的其他作用

SELECT语句中的*号不为人知的其他作用

作者:guanchaofeng 来源:不详 发布时间: 2009-03-24 19:26 点击:
在很多的SELECT语句中,*是一个给定表格的所有列的一个方法。然而,*号也可以帮助你了解表格结构的信息,同时它也可以帮助在查询中过滤数据。 当只使用*号而不用限定语句时,在最后输出的结果集的列的顺序与它们的创建列表、改变列表或者是创建的视图状态的

SELECT语句中的*号不为人知的其他作用

在很多的SELECT语句中,*是一个给定表格的所有列的一个方法。然而,*号也可以帮助你了解表格结构的信息,同时它也可以帮助在查询中过滤数据。

当只使用*号而不用限定语句时,在最后输出的结果集的列的顺序与它们的创建列表、改变列表或者是创建的视图状态的顺序是一致的。用另外一句话说,即使是表格被改动了,*号将返回最多最常用的表格状态的最后一列。

在这个例子中,让我们看一下Northwind数据库的一个简单的表Shippers,这个Shippers表中包含三行:ShipperID,公司名字,电话号码。

如果我们使用下面的查询语句,我们的结果集将会返回同样顺序的数据。

USE NORTHWIND
GO
SELECT *
FROM SHIPPERS
GO
ShipperID     CompanyName           Phone
------------------------------  --------
1            Speedy Express     (503) 555-9831
2            United Package     (503) 555-3199
3            Federal Shipping   (503) 555-9931
(3 row(s) affected)

使用表格或者是视图限定语句,*号将返回表格和视图中的所有的列。当你需要使用返回数据的时候,这在多查询情况下是非常有效的。

例如,在使用Northwind数据库是,我们需要Shippers表格中的所有列并且满足我们的连接需求。

USE Northwind
GO
SELECT Orders.OrderID, Shippers.*
FROM Shippers
             JOIN
            Orders
            ON (Shippers.ShipperID = Orders.ShipVia)
ORDER BY Orders.OrderID
GO
OrderID  ShipperID     CompanyName         Phone
------   ---------      ----------         ----------
10248        3      Federal Shipping   503) 555-9931
10249        1         Speedy Express  (503) 555-9831
11076        2        United Package   (503) 555-3199
11077        2        United Package   (503) 555-3199
(830 row(s) affected)

分享到:
本文"SELECT语句中的*号不为人知的其他作用"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4