SQL Server 数据查询:SELECT语句详解

需积分: 4 2 下载量 87 浏览量 更新于2024-09-10 收藏 4KB TXT 举报
【SQL Server SELECT】是SQL语言中的基础查询语句,用于从数据库中检索所需的数据。它提供了多种选项来定制你的查询,以满足特定需求。 在基本的`SELECT`语句中,你需要指定要从哪些列中选取数据。例如,`SELECT 学号,姓名 FROM xs`会从名为`xs`的表中选取`学号`和`姓名`两列的数据。如果你想要选取所有列,可以使用通配符`*`,如`SELECT * FROM kc`。 `INTO`子句用于创建一个新的表并保存查询结果。当你运行`SELECT * INTO xs_new FROM xs WHERE 6 > 8`这样的语句时,会创建一个名为`xs_new`的新表,其结构与`xs`表相同,但因为条件`6 > 8`始终为假,所以不会插入任何数据。注意,新表不能预先存在,且需要有创建表的权限。 `WHERE`子句是筛选数据的关键部分,它允许你根据指定的条件来过滤数据。例如,`SELECT * FROM xs WHERE 性别='女'`将返回所有性别为女性的学生记录。比较表达式如`agediff(year, 出生时间, getdate()) < 23`可用于找出年龄小于23岁的学生。逻辑运算符如`AND`, `OR`和`NOT`可组合多个条件,例如`WHERE 性别='女' AND datediff(year, 出生时间, getdate()) = 20`将找出年龄为20岁且性别的女性学生。 `GROUP BY`用于将数据按列进行分组,通常与聚合函数如`COUNT`, `SUM`, `AVG`, `MIN`, `MAX`等一起使用,例如`GROUP BY 专业`将数据按专业分组。`HAVING`则在`GROUP BY`之后应用条件,如`HAVING COUNT(*) > 5`会筛选出学生人数超过5个的专业。 `ORDER BY`用于对查询结果进行排序,你可以指定一个或多个列及排序方向(默认升序`ASC`,也可设置为降序`DESC`)。例如,`ORDER BY 学号, 姓名`将按学号升序排序,学号相同的情况下再按姓名升序排列。 `COMPUTE`子句用于计算统计信息,如`COMPUTE SUM(分数) BY 课程号`会在每组课程号下显示该课程的总分数。 `SQL Server SELECT`提供了强大的查询能力,让你能灵活地从数据库中提取所需的信息,进行各种数据操作和分析。熟练掌握这些基本用法对于任何SQL用户来说都是至关重要的。