Subjects SubjectID PKCategoryID FKSubjectCodeSubjectNameSubjectDescription 图4-7 Subjects表的结构 我们仍然可以将这个请求翻译成一个恰当的SELECT语句,即使提出这个请求的人想看到特定顺序的字段。但我们只需按照定义翻译语句时的特定顺序列出字段名称。下面就是当我们将这个要求翻译成SELEC……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
Subjects |
SubjectID PK |
图4-7 Subjects表的结构
我们仍然可以将这个请求翻译成一个恰当的SELECT语句,即使提出这个请求的人想看到特定顺序的字段。但我们只需按照定义翻译语句时的特定顺序列出字段名称。下面就是当我们将这个要求翻译成SELECT语句时的过程。
Translation | Select the subject name, category ID, and subject code from the subjects table |
Clean Up | Select subject name, category ID, subject code from subjects |
SQL | SELECT SubjectName, CategoryID, SubjectCode |
要求所有字段的捷径
SELECT子句对于指定字段数目并没有限制——事实上,我们可以列出源表上的所有字段。下面的例子显示了我们用来指定Subjects表中所有字段的SELECT语句,如图4-7。
SQL | SELECT SubjectID, CategoryID, SubjectCode, |
如果要指定源表的所有字段,并且表又包含大量的字段,那么我们将需要输入很多的字段名!幸运的是,SQL Standard指定了星号作为一个捷径,这样,我们就可以考虑使用缩短的语句。图4-8语法图表显示我们可以使用星号作为SELECT子句中一系列字段的替代。
图4-8星号快捷语法
当想要在FROM子句中指定源表的所有的字段时,可以将星号紧跟在SELECT子句后面。比如,下面是使用了星号的SELECT语句。
SQL | SELECT * FROM Subjects |
使用这个语句确实减少输入的字符!然而,以这种方式创建的SELECT语句也会有一个问题:星号代表了目前存在于源表中的所有字段,表字段的添加或删除会影响我们在SELECT语句的结果集。(真够奇怪的,SQL Standard宣称添加或删除字段不会影响我们的结果集。)只有当我们必须在结果集中不间断地看到相同的字段时,这才会引起问题。当我们在SELECT子句中使用了星号,如果字段已经在源表中删除了,那么我们的数据库将不会发出警告,但是当它找不到我们明确指定的字段时,它将会发出警告。虽然这对于我们的目标并不构成任何问题,但是,当我们深入探讨SQL程序时,它将是一个很重大的问题。重要的原则是:只有当我们需要“临时应急”地查询指定表的所有信息时,才使用星号。最后,查询将返回我们所需要的正确的信息并且还将更加的自我文档化。
目前,我们所看到的例子都是根据只需要来自一个表的字段的简单请求。在第三部分,我们将学习如何运行各种更复杂的请求,这些请求是来自几个表的字段的。
翻译
TechTarget中国特约技术编辑,某高校计算机科学专业教师和网络实验室负责人,曾任职某网络国际厂商,关注数据中心、开发运维、数据库及软件开发技术。有多本关于思科数据中心和虚拟化技术的译著,如《思科绿色数据中心建设与管理》和《基于IP的能源管理》等。
相关推荐
-
云端SQL Server高可用性最佳做法
与内部部署相比,在云端运行SQL Server可为数据库软件用户提供更多的灵活性和可扩展性,也可能更省钱。但云 […]
-
绘制数据关系图的利器:SQL Server 图像数据库工具
SQL Server 2017新增了图形数据库功能,你可以使用图结构来表示不同数据元素之间的关系。
-
如何在Azure部署时选择合适的SQL Server?
想要在Azure上运行SQL Server,企业一般会面临两种选择:在Azure虚拟机上安装SQL Server或使用Azure SQL Database。
-
Linux支持的引入 推动了SQL Server 2016集成服务的发展
随着SQL Server的不断发展,集成服务也在发生相应的变化。在最新的SSIS更新中,增加Linux支持和SQL Server 2016升级向导。