SQL关键语句集锦与操作详解

需积分: 10 2 下载量 107 浏览量 更新于2024-09-12 收藏 4KB TXT 举报
SQL(Structured Query Language)是一种用于管理和操作关系数据库的标准语言,本文档汇集了SQL中一些重要且不太常用的语句,以供学习者参考和实践。首先,我们来探讨几个关键概念和用法: 1. **INSERT语句**:INSERT语句用于向表或视图中添加新行。在`VALUES`子句中,可以指定一行或多行的数据,如`(1212,'Cerny',20,'Sales',3,90000.00,30000.00)`。在插入多行时,推荐使用逗号分隔的列表形式,以提高执行效率。同时,应注意如果插入的是图像数据,可能需要特殊处理,如确保每条记录的完整性。 2. **SELECT语句**:SELECT语句是SQL的核心,用于从表中检索数据。例如,`SELECT sales_person, SUM(sales) AS total_sales FROM sales GROUP BY sales_person HAVING SUM(sales) > 25`,这个查询会计算每个销售人员的总销售额,并只返回销售额超过25万的记录。`FETCHFIRST n ROWS ONLY`用于限制返回结果的数量,这里是获取前10行。 3. **UPDATE语句**:UPDATE用于更新表中的数据,可以针对特定条件进行修改。如`UPDATE staff SET dept = 51, salary = 70000 WHERE id = 750`,一次更新多个字段,或者使用括号明确列对,如`(dept, salary) = (51, 70000)`。同时,要注意避免无条件的`UPDATE`,以免意外覆盖大量数据。 4. **DELETE语句**:DELETE语句用于删除表中的行,如`DELETE FROM staff WHERE id IN (1212, 1213)`,这里仅删除id为1212和1213的记录。为了避免误删,通常会在删除前加上适当的WHERE子句。 5. **全选与复制表**:`CREATE TABLE pers LIKE staff`创建了一个与`staff`表结构相同的`pers`表,而`INSERT INTO pers SELECT * FROM staff WHERE dept = 384`则是根据部门ID为384的记录填充新表。 6. **子查询与嵌套操作**:如`UPDATE tmp_khjldzb1a SET a.newkhjl = (SELECT b.newkhjl FROM tmp_khjldzbb WHERE b.OLDKHJLID = a.OLDKHJLID FETCHFIRST 1 ROWS ONLY)`,这里使用子查询来获取匹配的值,用于更新目标表的属性。 这些语句展示了SQL在数据增删改查操作中的核心功能,以及在处理复杂查询和维护数据一致性时的灵活性。理解并熟练掌握这些语句是成为高效数据库管理员的关键。对于不常用但重要的语句,如子查询和全选/复制表,它们在特定场景下能提供强大的功能支持。