### SQL常用语句详解(附注释) #### 一、查询(Select) 在数据库操作中,查询是最常见的需求之一。SQL提供了丰富的查询功能,通过`SELECT`语句,我们可以从数据库中检索特定的信息。 1. **基本查询**:用于检索所有列的所有记录。 ```sql SELECT * FROM 表名 WHERE 条件; ``` 示例:`SELECT * FROM 学生表 WHERE 年龄 = 20;` 2. **模糊查询**:当需要根据部分信息进行匹配时,可以使用`LIKE`关键字。 ```sql SELECT * FROM 表名 WHERE 字段 LIKE '%值%'; ``` 示例:`SELECT * FROM 学生表 WHERE 姓名 LIKE '%华%';` 3. **限制查询结果数量**:使用`TOP`关键字来限制返回的结果集行数。 ```sql SELECT TOP 数量 * FROM 表名 WHERE 条件; ``` 示例:`SELECT TOP 10 * FROM 学生表 WHERE 性别 = '男';` 4. **范围查询**:使用`IN`或`BETWEEN`来查询属于指定集合或范围内的数据。 ```sql SELECT * FROM 表名 WHERE 字段 IN ('值1', '值2', ...); SELECT * FROM 表名 WHERE 字段 BETWEEN 值1 AND 值2; ``` 5. **字段别名**:为查询结果中的列命名,使输出更直观。 ```sql SELECT 字段1 AS 别名1, 字段2 AS 别名2 FROM 表名; ``` 示例:`SELECT 姓名 AS 学员姓名, 成绩 FROM 学生表;` #### 二、插入(Insert) 插入数据到数据库表中是创建新记录的关键步骤。 1. **向表中插入单条记录**: ```sql INSERT INTO 表名 (字段1, 字段2, ...) VALUES (值1, 值2, ...); ``` 示例:`INSERT INTO 学生表 (姓名, 年龄, 性别) VALUES ('张三', 20, '男');` 2. **从一个表复制数据到另一个表**: ```sql INSERT INTO 目标表 SELECT * FROM 源表; ``` 这种方式可以快速地将一个表的数据复制到另一个结构相同的表中。 #### 三、更新(Update) 更新现有数据,修改数据库中已有的记录。 1. **更新单个字段的值**: ```sql UPDATE 表名 SET 字段 = 新值 WHERE 条件; ``` 示例:`UPDATE 学生表 SET 年龄 = 21 WHERE 姓名 = '张三';` 2. **同时更新多个字段的值**: ```sql UPDATE 表名 SET 字段1 = 值1, 字段2 = 值2, ... WHERE 条件; ``` 示例:`UPDATE 学生表 SET 年龄 = 21, 性别 = '女' WHERE 姓名 = '张三';` #### 四、删除(Delete) 删除数据,移除不再需要的记录。 1. **删除满足条件的记录**: ```sql DELETE FROM 表名 WHERE 条件; ``` 示例:`DELETE FROM 学生表 WHERE 年龄 < 18;` 2. **清空表中所有记录**: ```sql DELETE FROM 表名; ``` 警告:这将删除表中所有数据,请谨慎操作。 #### 五、统计(Aggregate Functions) SQL提供了多种聚合函数,用于对数据进行统计分析。 1. **求平均值**:`AVG(字段)`,计算指定字段的平均值。 示例:`SELECT AVG(成绩) FROM 学生表;` 2. **计数**:`COUNT(*)`计算所有行的数量;`COUNT(字段)`计算非NULL的行数。 示例:`SELECT COUNT(*) FROM 学生表;` 示例:`SELECT COUNT(成绩) FROM 学生表;` 3. **最大值与最小值**:`MAX(字段)`和`MIN(字段)`分别返回指定字段的最大值和最小值。 示例:`SELECT MAX(年龄) FROM 学生表;` 示例:`SELECT MIN(年龄) FROM 学生表;` 4. **求和**:`SUM(字段)`,计算指定字段的总和。 示例:`SELECT SUM(成绩) FROM 学生表;` 通过以上介绍,我们了解了SQL语言中基本且重要的几个操作命令,它们构成了数据检索、插入、更新、删除以及统计的基础。熟练掌握这些语句,将极大地提升你在数据库管理方面的效率和能力。
虽然ADO组件中的Connection、Command及RecordSet都可以用来操纵数据库中的记录,但还是推荐读者使用SQL语句来操纵数据库,因为它可以使你开发的程序更专业化,而且使用SQL语句的执行效率更高,功能更强大。下面以功能来分类,介绍比较常用的SQL语句,包括查询、添加、更新、删除和统计几个方面。
2.4.1 查询
查询主要用到SELECT语句,下面举例说明SELECT语句在不同情况下的使用。
例1 一般精确查询(当字段类型是字符型时,字段值需要加单引号):
sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]"
例2 字符串模糊比较:
sql="select * from 数据表 where 字段名 like '%字段值%' order by 字段名 [desc]"
例3 最多仅选出前n项符合条件的结果:
sql="select top 10 * from 数据表 where 字段名 order by 字段名 [desc]"
例4 在集合中查找(in的括号中也可以是一个SELECT语句):
sql="select * from 数据表 where 字段名 in ('值1','值2','值3')"
例5 范围查找:
sql="select * from 数据表 where 字段名 between 值1 and 值2"
例6 使用别名:
sql = "SELECT 字段1 AS 学号, 字段2 AS 姓名 FROM 数据表
- 粉丝: 0
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于C语言的系统服务框架.zip
- (源码)基于Spring MVC和MyBatis的选课管理系统.zip
- (源码)基于ArcEngine的GIS数据处理系统.zip
- (源码)基于JavaFX和MySQL的医院挂号管理系统.zip
- (源码)基于IdentityServer4和Finbuckle.MultiTenant的多租户身份认证系统.zip
- (源码)基于Spring Boot和Vue3+ElementPlus的后台管理系统.zip
- (源码)基于C++和Qt框架的dearoot配置管理系统.zip
- (源码)基于 .NET 和 EasyHook 的虚拟文件系统.zip
- (源码)基于Python的金融文档智能分析系统.zip
- (源码)基于Java的医药管理系统.zip