![SQL Server 2016从入门到精通(视频教学超值版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/756/26793756/b_26793756.jpg)
5.2 数据操作语句
数据操作语句(Data Manipulation Language,DML)是使用户能够查询数据库及操作已有数据库中数据的语句,其中包括数据库插入语句、数据更改语句、数据删除语句和数据查询语句等。本节将介绍这些内容。
5.2.1 数据的插入——INSERT
向已创建好的数据表中插入记录,可以一次插入一条记录,也可以一次插入多条记录。插入表中的记录中的值必须符合各个字段值数据类型及相应的约束。INSERT语句基本语法格式如下:
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T127_40015.jpg?sign=1739032494-QORtGEKOvM1uzd98NRylfzas9QeO0XOk-0-6113b133929b210017a198fd858a5d80)
- table_name:指定要插入数据的表名。
- column_list:指定要插入数据的那些列。
- value_list:指定每个列对应插入的数据。
提示
使用该语句时字段列和数据值的数量必须相同,value_list中的这些值可以是DEFAULT、NULL或者是表达式。DEFAULT表示插入该列在定义时的默认值;NULL表示插入空值;表达式将插入表达式计算之后的结果。
在演示插入操作之前,将数据库的名称company重新修改为test_db,语句如下:
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T127_40017.jpg?sign=1739032494-RIunepQu355jyTLew9e8Cooqo0kKoKKz-0-432d49798ed2449c8ca3c85182ffbdb0)
准备一张数据表,这里定义名称为teacher的表,可以在test_db数据库中创建该数据表,创建表的语句如下:
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T128_40018.jpg?sign=1739032494-mrikEvtOXvfR2KSlb53R3pY24c74vbAY-0-daf8fde56ef9fac8e6a307654918d57d)
执行操作后刷新表节点,即可看到新添加的teacher表,如图5-2所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P128_6882.jpg?sign=1739032494-qXezu7NWNskm6RwiDjskUBZlBDZKpUfl-0-d2d43e8b973c8ab217ad74b62cc09c78)
图5-2 添加teacher表
【例5.8】向teacher表中插入一条新记录,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T128_40019.jpg?sign=1739032494-M0OQGfqLVjWNNKwbP62FVnJ9O6o0X50c-0-e17e8baaa42b4d40a3903d15b605ffc2)
执行语句后,结果如图5-3所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P128_6909.jpg?sign=1739032494-t1SkEdzsmX4w75TlJJmIW1eB0mrwQDe7-0-675e156593eb4d4f25f99ea0b93c5765)
图5-3 向teacher表中插入一条记录
插入操作成功,可以从teacher表中查询出一条记录。
【例5.9】向teacher表中插入多条新记录,T-SQL代码如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T128_40020.jpg?sign=1739032494-eDUEesKGLslfkRHQblEudz5406UZ1dQp-0-b82b3e9c54533c4cd5eaa19a812ea067)
执行结果如图5-4所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P129_6966.jpg?sign=1739032494-BJTLPBYMSpRLyWubFqVtJWDfThs5ESW9-0-df8574c06fa88cdfcb0bddb1fed524bf)
图5-4 向teacher表中插入多条记录
对比插入前后的查询结果,可以看到现在表中已经多了3条记录,插入操作成功。
5.2.2 数据的更改——UPDATE
表中有数据之后,接下来可以对数据进行更新操作,SQL Server使用UPDATE语句更新表中的记录,可以更新特定的行或者同时更新所有的行。UPDATE语句的基本语法结构如下:
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T129_40022.jpg?sign=1739032494-3ITABHGK0bF4WqijZgRV3xzxnFLNt5Jn-0-dada8282caadb1b616f39d795476c437)
column_name1,column_name2,……,column_nameN为指定更新的字段的名称;value1,value2,……,valueN为相对应的指定字段的更新值;condition指定更新的记录需要满足的条件。更新多个列时,每个“列=值”对之间用逗号隔开,最后一列之后不需要逗号。
1.指定条件修改
【例5.10】在teacher表中,更新id值为1的记录,将birthday字段值改为‘1980-8-8’,将cellphone字段值改为‘0018600’,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T129_40023.jpg?sign=1739032494-pwd7IQ1mclgw3jwvw6iDlJWQ4Ze210HD-0-d94ee5d3ebb3b687e75238b4b4b21736)
对比执行前后的结果如图5-5所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P130_7029.jpg?sign=1739032494-JKMNnemJekTYV3oiW0pgADVOE0iXUMvi-0-1a7592d059cc30dd8f90ad1b5bcfbb7a)
图5-5 指定条件修改记录
对比前后的查询结果,可以看到,更新指定记录成功。
2.修改表中所有记录
【例5.11】在teacher表中,将所有老师的电话都修改为‘01008611’,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T130_40026.jpg?sign=1739032494-4IO0jxQIg1CunqZxfLdJuODJvpOYdzE4-0-e08a3efabf7a7e56978336d11638779e)
代码执行后的结果如图5-6所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P130_7056.jpg?sign=1739032494-M4kn2PuPHRKxCsqWhrfFqH0tp7EqZHBr-0-8100bca40014b0b06c79fb9eb4238322)
图5-6 同时修改teacher表中所有记录的cellphone字段
由结果可以看到,现在表中所有记录的cellphone字段都有相同的值,修改操作成功。
5.2.3 数据的删除——DELETE
数据的删除将删除表的部分或全部记录,删除时可以指定删除条件从而删除一条或多条记录;如果不指定删除条件,DELETE语句将删除表中所有的记录,清空数据表。DELETE语句的基本语法格式如下:
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T131_40030.jpg?sign=1739032494-Qe1g1WydzjLQmskr8h3Q9B04ZRWyGHO8-0-9ede4b42abddb6b8541e9ddea89eff3c)
- table_name为执行删除操作的数据表。
- WHERE子句指定删除的记录要满足的条件。
- condition为条件表达式。
1.按指定条件删除一条或多条记录
【例5.12】删除teacher表中id等于1的记录,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T131_40031.jpg?sign=1739032494-2V68ejUdmqkO130c8v2qtat6b5tZ6Msi-0-6a4b4509938ace9e5c9761d8bfdacb05)
执行结果如图5-7所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P131_7104.jpg?sign=1739032494-SZIGl9yvBSWOEk4P3DtCW3rvppDffEbF-0-0b9af75fd44e294107619abe57094372)
图5-7 按指定条件删除一条记录
由结果可以看到,代码执行之后,SELECT语句的查询结果为空,删除记录成功。
2.删除表中所有记录
使用不带WHERE子句的DELETE语句可以删除表中的所有记录。
【例5.13】删除teacher表中所有记录,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T131_40032.jpg?sign=1739032494-f95MdlPNgHj7O6tiSk1fbZy7IURhEn4l-0-126b52487bfade95d17cf81b4c930e93)
执行结果如图5-8所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P132_7140.jpg?sign=1739032494-wmeYcndvEpPU1dQ4mO3dtJ6maYOsbrgz-0-1f357340e9a0079aed38e9cfde9eccf1)
图5-8 删除表中所有记录
对比删除前后的查询结果,可以看到,执行DELETE语句之后,表中的记录被全部删除,所以第二条SELECT语句的查询结果为空。
5.2.4 数据的查询——SELECT
对于数据库管理系统来说,数据查询是执行频率最高的操作,是数据库中非常重要的部分。T-SQL中使用SELECT语句进行数据查询,SELECT语句的基本语法结构如下:
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T132_40037.jpg?sign=1739032494-gRyzo9QUlxwquSArleoJdxYJd11G4OhZ-0-e31826d8f84e71139637bbcddb645f76)
- ALL:指定在结果集中可以包含重复行。
- DISTINCT:指定在结果集中只能包含唯一行。对于DISTINCT关键字来说,NULL值是相等的。
- {* | <字段列表>}:包含星号通配符和字段列表,“*”表示查询所有的字段,“字段列表”表示查询指定的字段,字段列至少包含一个子段名称,如果要查询多个字段,多个字段之间用逗号隔开,最后一个字段后不要加逗号。
- FROM table_name | view_name:表示查询数据的来源。table_name表示从数据表中查询数据,view_name表示从视图中查询。对于表和视图,在查询时均可指定单个或者多个。
- WHERE <condition>:指定查询结果需要满足的条件。
- GROUP BY <字段名>:该子句告诉SQL Server显示查询出来的数据时,按照指定的字段分组。
- [ORDER BY <字段名>]:该子句告诉SQL Server按什么样的顺序显示查询出来的数据,可以进行的排序有:升序(ASC)、降序(DESC)。
为了演示本节介绍的内容,可以在指定的数据库中建立下面的数据表,并插入记录数据。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T133_40038.jpg?sign=1739032494-Y2hXGMojKtSxtD5OZSmNuavAwiVYC3V7-0-d6168c6b531c87917e8ce0129247cc7a)
执行语句后,查看stu_info表的数据,结果如图5-9所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P133_7285.jpg?sign=1739032494-PYSl3iBVqOJydSSQATrKCSgoUpjYh6nH-0-b57f09311b5eebdee62b70668da41593)
图5-9 创建stu_info表
1.基本SELECT查询
【例5.14】查询stu_info表中的所有学生信息,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T133_40040.jpg?sign=1739032494-cg7M7prVCHDaymQxEgeWbyhgRDaL5mTD-0-1574f2105cfca2f1987487a768012d80)
执行结果如图5-10所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P133_7302.jpg?sign=1739032494-wHMfiQ8VswW9NRfuyGozD0JY4FkQVnze-0-7a4a3c62f9518d9b490ccfac4c4c48a0)
图5-10 查询stu_info表中所有学生信息
可以看到,使用星号(*)通配符时,将返回所有列,列按照定义表的时候的顺序显示。
2.查询记录中指定字段
有时候,并不需要数据表中的所有字段的值,此时,可以指定需要查询的字段名称,这样不仅显示的结果更清晰,而且能提高查询的效率。
【例5.15】查询stu_info数据表中学生的姓名和成绩,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T134_40043.jpg?sign=1739032494-4hpjIWxVA1HvOleQAUwkZq7xHxeuQqK9-0-37287aa8c6dfbdc9e1e4bdb88f722f2d)
代码执行结果如图5-11所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P134_7327.jpg?sign=1739032494-mvu7c3EjIEuyUNjllWIlBm4Bi6Qtj9WW-0-1c15bab68055689328b92a3e0444bcf2)
图5-11 查询stu_info数据表中学生的姓名和成绩字段
3.在查询结果中使用表达式
【例5.16】不修改数据表,查询并显示所有学生的成绩降低5分后的结果,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/z1.jpg?sign=1739032494-i2GeImaXRfXiJtpyWNsrG0j15BxMQ2qA-0-86b8e43c88b0d488f9f6854db944b518)
代码执行结果如图5-12所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P134_7344.jpg?sign=1739032494-byg76IlQijT9UYJJw5KGT5elgrqWm2E8-0-1b4d6726da08144ba3b5a0d4d071d1b5)
图5-12 在查询结果中使用表达式
这里s_score-5表达式后面使用了AS关键字,该关键字表示为表达式列指定一个用于显示的字段名称,这里AS为一个可选参数,也可以不使用。
提示
这里的s_score-5表达式中减号为英文状态下输入的符号,如果在中文状态下输入,运行将会报错。
4.显示部分查询结果
当数据表中包含大量的数据时,可以通过指定显示记录数限制返回的结果集中的行数,方法是在SELECT语句中使用TOP关键字,其语法格式如下:
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T135_40048.jpg?sign=1739032494-BVS9S5uHMPgqI7gLNqLi2TKCdHslXHKW-0-bece9cd1723468c6a81a5ce8e2d0bade)
TOP后面有两个可选参数,n表示从查询结果集返回指定的n行,PERCENT表示从结果集中返回指定的百分比数目的行。
【例5.17】查询stu_info中所有的记录,但只显示前3条,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T135_40049.jpg?sign=1739032494-LxwkCTnciTdMHx8sAIhpYP3lYX1zWVeX-0-2dc8522e0c9f4e780600aaee1bccbc5c)
代码执行结果如图5-13所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P135_7379.jpg?sign=1739032494-JtVWz6vpzMt7A3gZrrFCfZM8cLpUKwNY-0-59acb4c146afc5ea7578c2aeffda6dbb)
图5-13 返回stu_info表中前3条记录
5.带限定条件的查询
数据库中如果包含大量的数据,根据特殊要求,可能只须查询表中的指定数据,即对数据进行过滤。在SELECT语句中通过WHERE子句,对数据进行过滤。
【例5.18】查询stu_info表中所有性别为‘男’的学生的信息,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T135_40050.jpg?sign=1739032494-sd6lZceWyUbFRKlAQGMDg0vBLM3qcHeI-0-3d49e279d91d238f3619e07fe7b3bf49)
代码执行结果如图5-14所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P136_7404.jpg?sign=1739032494-aZNZxT8LtC0TaIY2kFp5VU5Rrw0hPgcJ-0-0889c4d7bae290f07c2cba1ff45c7868)
图5-14 带限定条件的查询
由返回结果可以看到,返回了4条记录,这些记录有一个共同的特点,就是其s_sex字段值都为‘男’。
相反的,可以使用关键字NOT来查询与条件范围相反的记录。
【例5.19】查询stu_info表中所有性别不为‘男’的学生的信息,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T136_40052.jpg?sign=1739032494-EURoqtevqlGlB63xnPuFBNHNUIpQ8PIE-0-53f4d6c92c50f60a5d3e9339cb579fa7)
代码执行结果如图5-15所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P136_7423.jpg?sign=1739032494-Be2oq5fJv2DNwl0j5Z1x6NmlusdqVWAL-0-56ec15912a385adfa069bde726a4bc23)
图5-15 NOT限定条件查询
可以看到,返回的结果集中,所有记录的s_sex字段值为非‘男’,即查询女同学的信息。当然,这里只是为了说明NOT运算符的使用方法,读者也可以在WHERE子句中直接指定查询条件为s_sex=‘女’。
6.带AND的多条件查询
使用SELECT查询时,可以增加查询的限制条件,这样可以使查询的结果更加精确。SQL Server在WHERE子句中使用AND操作符,限定必须满足所有查询条件的记录才会被返回。可以使用AND连接两个甚至多个查询条件,多个条件表达式之间用AND分开。
【例5.20】查询stu_info表中性别为‘男’并且成绩大于80的学生信息,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T136_40056.jpg?sign=1739032494-vuwHjvsmbBdmGcbhJdJuJovBcP9AhGcr-0-d37ba6b0cdcf7100ff8cf17b633bf727)
代码执行结果如图5-16所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P137_7449.jpg?sign=1739032494-D0vNRgzjHaGkl1qFjtGjRbKqTeQIntUd-0-22bea5bf7b91bfb58fdf4736884ea13c)
图5-16 带AND运算符的查询
返回查询结果中所有记录的s_sex字段值为‘男’,其成绩都大于80,同时满足这两个查询条件。
7.带OR的多条件查询
与AND相反,在WHERE声明中使用OR操作符,表示只需要满足其中一个条件的记录即可返回。OR也可以连接两个甚至多个查询条件,多个条件表达式之间用OR分开。
【例5.21】查询stu_info表中成绩大于80,或者年龄大于18的学生信息,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T137_40059.jpg?sign=1739032494-OWIDxhMJt7AlenNW6pStp3umRnV7zBZ9-0-449bc526931610d2a32a049b894c5585)
代码执行结果如图5-17所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P137_7466.jpg?sign=1739032494-k5FKcgv9tOTJLLMQl1QVUIiobCMnioO4-0-009a537eede0841f1d9079d3328ce1af)
图5-17 带OR运算符多条件查询
由返回结果可以看到,第1条和第4条记录满足WHERE子句中的第一个大于80分的条件,第2条和第3条记录虽然其s_score字段值不满足大于80分的条件,但是其s_age年龄字段满足了WHERE子句中第二个年龄大于18岁的条件,因此也是符合查询条件的。
8.使用LIKE运算符进行匹配查询
前面介绍的各种查询条件中,限定条件是确定的,但是某些时候,不能明确地指明查询的限定条件,此时,可以使用LIKE运算符进行模式匹配查询,在查询时可以使用如下的几个通配符,如表5-2所示。
表5-2 各种通配符的含义
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T138_40064.jpg?sign=1739032494-7YDFGIFlM7eF75X1We8MBy23oEgFiM9Z-0-f4ae6e48ed3b3282e9c5b3d98d9d158e)
【例5.22】在stu_info数据表中,查询所有姓‘马’的学生信息,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T138_40065.jpg?sign=1739032494-zFc8AChqzlJhDFJ7l0u9ytPV8DrPFMEe-0-5cbab78565ce28aa22591e70a67787d1)
代码执行结果如图5-18所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P138_7553.jpg?sign=1739032494-o6JGuHaaTY1D8BNCJAunrr9i67JhHT9o-0-ea7a9eff169a492bd10a393c2520811b)
图5-18 查询所有姓名以“马”开头同学的记录
数据表中只有一条记录的s_name字段值以字符‘马’开头,符合匹配字符串‘马%’。
【例5.23】查询stu_info表中所有姓“张”、姓“王”、姓“李”的学生信息,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T138_40066.jpg?sign=1739032494-L9m4J4MIuzJgGwrPRshzgi9JLAHPirV3-0-588bf4bb7a5f2af17e794d0bcfee31b6)
代码执行结果如图5-19所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P138_7572.jpg?sign=1739032494-xmSXxv2ssev0H8AKAUEJGVoOlHMxofi0-0-dc87f38fde30d5f0dc622ac1dbd6db9c)
图5-19 查询所有姓名以“张”、“王”或“李”开头同学的记录
由返回结果可以看到,这里返回的3条记录的s_name字段值分别是以张、王或者李这3个姓中的某一个开头的,只要是以这3个姓开头的,不管后面还有多少个字符都是满足LIKE运算符中匹配条件的。
9.使用BETWEEN AND进行查询
BETWEEN AND运算符可以对查询值限定一个查询区间。
【例5.24】查询stu_info表中成绩大于50小于90的学生信息,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T139_40070.jpg?sign=1739032494-dANRJfQW79xDYOnfrSw2awLzB0DUJrMo-0-3a930f1bae4b364fdc2610ae9e9a5dbd)
代码执行结果如图5-20所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P139_7599.jpg?sign=1739032494-LtMXQw0EG9RnFI7vt0KvTJGqEd0Ap6gF-0-b983d15da62fec1f524c511d478e2929)
图5-20 使用BETWEEN AND运算符查询
由返回结果可以看到,这里3条记录的s_score字段的值都是大于50小于90,满足查询条件。
10.对查询结果排序
在说明SELECT语句语法时介绍了ORDER BY子句,使用该子句可以根据指定的字段的值,对查询的结果进行排序,并且可以指定排序方式(降序或者升序)。
【例5.25】查询stu_info表中所有学生信息,并按照成绩由高到低进行排序,输入语句如下。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-T139_40071.jpg?sign=1739032494-eo5bpDJPH2k9i2nPreO6cmGG5aJKwuzK-0-6bde25ecde7722ff79fcfa517c7ca16b)
代码执行结果如图5-21所示。
![](https://epubservercos.yuewen.com/4FBA48/15253388305240806/epubprivate/OEBPS/Images/Figure-P139_7616.jpg?sign=1739032494-KSS6kO3yJHIwnqS70nPWwoFmi9UV01TZ-0-82ce1133b65f48f0249db18fa64682e2)
图5-21 对查询结果排序
查询结果中返回了stu_info表的所有记录,这些记录根据s_score字段的值进行了一个降序排列。ORDER BY子句也可以对查询结果进行升序排列,升序排列是默认的排序方式,在使用ORDER BY子句升序排列时,可以使用ASC关键字,也可以省略该关键字。读者可以自己编写升序排列的代码,对比这里的结果。