SQL Sever 基础知识 - 数据查询

SQL Sever 基础知识 - 一、查询数据

  • 一、查询数据
    • [第1节 基本 SQL Server 语句SELECT](#第1节 基本 SQL Server 语句SELECT)
    • [第2节 SELECT语句示例](#第2节 SELECT语句示例)
      • [2.1 SELECT - 检索表示例的某些列](#2.1 SELECT - 检索表示例的某些列)
      • [2.2 SELECT - 检索表的所有列](#2.2 SELECT - 检索表的所有列)
      • [2.3 SELECT - 对结果集进行筛选](#2.3 SELECT - 对结果集进行筛选)
      • [2.4 SELECT - 对结果集进行排序](#2.4 SELECT - 对结果集进行排序)
      • [2.5 SELECT - 对结果集进行分组](#2.5 SELECT - 对结果集进行分组)
      • [2.5 SELECT - 对结果集进行筛选器组](#2.5 SELECT - 对结果集进行筛选器组)

更多SQL Sever基础知识可查看: SQL Sever 基础知识(全)

特别说明

本文章所用的所有数据库、数据表及其数据皆为AI随机生成,不涉及个人隐私,且仅供学习使用!

一、查询数据

介绍了 SQL Server SELECT语句的基础知识,重点介绍如何针对单个表进行查询。

第1节 基本 SQL Server 语句SELECT

数据库表是存储数据库中所有数据的对象。在表中,数据以类似于电子表格的行列格式进行逻辑组织。每行表示表中的一条唯一记录,每列表示记录中的一个字段。SQL Server使用架构对表和其他数据库对象进行逻辑分组。

要从表中查询数据,请使用 SELECT 语句。以下是 SELECT 语句的最基本形式:

sql 复制代码
select <列名1>,<列名2>,... from [表名]

在此语法中:

①在 SELECT 子句中指定要从中查询数据的逗号分隔列的列表;

②在 FROM 子句中指定源表及其架构名称。

查询语句执行的顺序:

在处理 SELECT 语句时,SQL Server会先处理 FROM 子句,然后再处理 SELECT 子句。

查询的结果称为结果集。

第2节 SELECT语句示例

在此使用示ZCustomers 表进行演示,表中数据如下:

2.1 SELECT - 检索表示例的某些列

查询ZCustomers表中所有客户的名字、地址和邮箱:

sql 复制代码
 select cust_name,cust_address,cust_email
 from ZCustomers

执行结果如下:

2.2 SELECT - 检索表的所有列

查询ZCustomers表中所有数据:

sql 复制代码
 select *
 from ZCustomers

执行结果:

select * 有助于检查不熟悉的表的列和数据,对临时查询也很有帮助。

2.3 SELECT - 对结果集进行筛选

要根据一个或多个条件筛选行,使用 WHERE 子句。我们可以查询表中中国的客户相关信息:

sql 复制代码
 select * 
 from ZCustomers
 where cust_country = 'cn'

执行结果:

WHERE 子句可用时,SQL Server按以下顺序处理查询的子句: FROM 、 WHERE 和 SELECT 。

2.4 SELECT - 对结果集进行排序

要根据一个或多个条件筛排序,使用 order by 子句。我们可以查询表中中国的客户相关信息,并将name排序:

sql 复制代码
 select * 
 from ZCustomers
 where cust_country = 'cn'
 order by cust_name

执行结果:

ORDER BY子句可用时,SQL Server按以下顺序处理查询的子句: FROM 、 WHERE 、 SELECT 和 ORDER BY 。

2.5 SELECT - 对结果集进行分组

统计ZCustomers表中所有客户城市以及每个城市中的客户数:

sql 复制代码
 select cust_country,count(*) as '个数'
 from ZCustomers
 --where 
 group by cust_country
 order by cust_country

执行结果:

GROUP BY子句可用时,SQL Server按以下顺序处理子句: FROM 、 WHERE 、 GROUP BY 、 SELECT 和 ORDER BY 。

2.5 SELECT - 对结果集进行筛选器组

要根据一个或多个条件筛选组,使用 HAVING 子句。下面的示例返回城市的客户数超过3个:

sql 复制代码
 select cust_country,count(*) as '个数'
 from ZCustomers
 --where 
 group by cust_country
 having count(*) > 3
 order by cust_country

执行结果:

HAVING子句可用时,SQL Server按以下顺序处理子句: FROM 、 WHERE 、 GROUP BY 、HAVING、 SELECT 和 ORDER BY 。

Note:
WHERE 子句过滤行,而 HAVING 子句过滤组。

相关推荐
科技小花4 小时前
数据治理平台架构演进观察:AI原生设计如何重构企业数据管理范式
数据库·重构·架构·数据治理·ai-native·ai原生
一江寒逸4 小时前
零基础从入门到精通MySQL(中篇):进阶篇——吃透多表查询、事务核心与高级特性,搞定复杂业务SQL
数据库·sql·mysql
D4c-lovetrain4 小时前
linux个人心得22 (mysql)
数据库·mysql
阿里小阿希5 小时前
CentOS7 PostgreSQL 9.2 升级到 15 完整教程
数据库·postgresql
荒川之神5 小时前
Oracle 数据仓库雪花模型设计(完整实战方案)
数据库·数据仓库·oracle
做个文艺程序员5 小时前
MySQL安全加固十大硬核操作
数据库·mysql·安全
不吃香菜学java5 小时前
Redis简单应用
数据库·spring boot·tomcat·maven
一个天蝎座 白勺 程序猿5 小时前
Apache IoTDB(15):IoTDB查询写回(INTO子句)深度解析——从语法到实战的ETL全链路指南
数据库·apache·etl·iotdb
不知名的老吴5 小时前
Redis的延迟瓶颈:TCP栈开销无法避免
数据库·redis·缓存
YOU OU5 小时前
三大范式和E-R图
数据库