### SQL语句教程知识点概述 #### 一、SQL基础指令详解 **1. SELECT** - **功能**: 用于从数据库的表中选取数据。是最基本也是最常用的SQL语句之一。 - **语法**: `SELECT column1, column2,... FROM table_name;` - **示例**: `SELECT store_name FROM Store_Information;` 该命令将返回所有商店的名字。 **2. DISTINCT** - **功能**: 用于返回唯一不同的值。 - **语法**: `SELECT DISTINCT column_name FROM table_name;` - **示例**: `SELECT DISTINCT store_name FROM Store_Information;` 此命令将只返回不重复的商店名字。 **3. WHERE** - **功能**: 用于从表中选取指定条件的记录。 - **语法**: `SELECT column_name(s) FROM table_name WHERE condition;` - **示例**: `SELECT * FROM Store_Information WHERE Sales > 1000;` 这条命令将返回销售额超过1000的所有记录。 **4. AND / OR** - **功能**: 连接多个条件。 - **示例**: `SELECT * FROM Store_Information WHERE Sales > 1000 AND store_name = 'LosAngeles';` **5. IN** - **功能**: 检查列的值是否存在于指定的列表中。 - **示例**: `SELECT * FROM Store_Information WHERE store_name IN ('LosAngeles', 'SanDiego');` **6. BETWEEN** - **功能**: 选取位于两个值之间的数据范围。 - **示例**: `SELECT * FROM Store_Information WHERE Sales BETWEEN 500 AND 1000;` **7. LIKE** - **功能**: 用于在WHERE子句中搜索列中的指定模式。 - **示例**: `SELECT * FROM Store_Information WHERE store_name LIKE '%Angeles%';` **8. ORDER BY** - **功能**: 对结果集进行排序。 - **示例**: `SELECT * FROM Store_Information ORDER BY Sales DESC;` #### 二、SQL函数与分组 **1. COUNT** - **功能**: 返回匹配指定条件的行数。 - **示例**: `SELECT COUNT(*) FROM Store_Information;` **2. GROUP BY** - **功能**: 结合具有相同值的列进行聚合计算。 - **示例**: `SELECT store_name, COUNT(*) FROM Store_Information GROUP BY store_name;` **3. HAVING** - **功能**: 类似于WHERE,但作用于分组后的结果集。 - **示例**: `SELECT store_name, COUNT(*) FROM Store_Information GROUP BY store_name HAVING COUNT(*) > 1;` **4. ALIAS** - **功能**: 为表或列指定别名。 - **示例**: `SELECT store_name AS 'Shop Name' FROM Store_Information;` #### 三、表格链接与字符串操作 **1. CONCATENATE** - **功能**: 将多个字符串连接成一个字符串。 - **示例**: `SELECT CONCATENATE(store_name, ' ', Date) FROM Store_Information;` **2. SUBSTRING** - **功能**: 提取字符串的一部分。 - **示例**: `SELECT SUBSTRING(store_name, 1, 3) FROM Store_Information;` **3. TRIM** - **功能**: 删除字符串首尾的空白字符。 - **示例**: `SELECT TRIM(store_name) FROM Store_Information;` #### 四、表格创建与管理 **1. CREATE TABLE** - **功能**: 创建新表。 - **示例**: `CREATE TABLE NewTable (column1 datatype, column2 datatype);` **2. CONSTRAINT** - **功能**: 定义表中的规则或限制。 - **示例**: `CREATE TABLE NewTable (column1 datatype NOT NULL);` **3. NOT NULL** - **功能**: 确保字段始终包含值。 - **示例**: 上述示例已经包含。 **4. UNIQUE** - **功能**: 确保字段的值是唯一的。 - **示例**: `CREATE TABLE NewTable (column1 datatype UNIQUE);` **5. CHECK** - **功能**: 限制字段值的范围。 - **示例**: `CREATE TABLE NewTable (column1 datatype CHECK(column1 >= 0));` **6. 主键** - **功能**: 独一无二标识表中的每一行。 - **示例**: `CREATE TABLE NewTable (id INT PRIMARY KEY);` **7. 外键** - **功能**: 创建与另一张表的主键的链接。 - **示例**: `CREATE TABLE NewTable (foreign_key INT REFERENCES OtherTable(id));` **8. CREATE VIEW** - **功能**: 创建视图,即虚拟表。 - **示例**: `CREATE VIEW SalesView AS SELECT store_name, SUM(Sales) FROM Store_Information GROUP BY store_name;` **9. CREATE INDEX** - **功能**: 加速数据检索的速度。 - **示例**: `CREATE INDEX idx_store ON Store_Information (store_name);` **10. ALTER TABLE** - **功能**: 修改现有表的结构。 - **示例**: `ALTER TABLE Store_Information ADD new_column datatype;` **11. DROP TABLE** - **功能**: 删除表。 - **示例**: `DROP TABLE Store_Information;` **12. TRUNCATE TABLE** - **功能**: 删除表中的所有记录,但保留表结构。 - **示例**: `TRUNCATE TABLE Store_Information;` #### 五、数据操作 **1. INSERT INTO** - **功能**: 向表中插入新记录。 - **示例**: `INSERT INTO Store_Information (store_name, Sales, Date) VALUES ('New York', 1200, 'Jan-09-1999');` **2. UPDATE** - **功能**: 更新表中已存在的记录。 - **示例**: `UPDATE Store_Information SET Sales = 1250 WHERE store_name = 'LosAngeles';` **3. DELETE FROM** - **功能**: 删除表中的记录。 - **示例**: `DELETE FROM Store_Information WHERE store_name = 'LosAngeles';` #### 六、进阶SQL **1. UNION** - **功能**: 结合两个或更多SELECT语句的结果集。 - **示例**: `SELECT store_name FROM Store_Information UNION SELECT store_name FROM OtherStore_Information;` **2. UNION ALL** - **功能**: 类似于UNION,但包含所有记录,包括重复的记录。 - **示例**: `SELECT store_name FROM Store_Information UNION ALL SELECT store_name FROM OtherStore_Information;` **3. INTERSECT** - **功能**: 返回两个或更多SELECT语句结果集的交集。 - **示例**: `SELECT store_name FROM Store_Information INTERSECT SELECT store_name FROM OtherStore_Information;` **4. MINUS** - **功能**: 返回在第一个SELECT语句中但不在第二个SELECT语句中的记录。 - **示例**: `SELECT store_name FROM Store_Information MINUS SELECT store_name FROM OtherStore_Information;` **5. 子查询** - **功能**: 在一个查询语句中嵌套另一个查询语句。 - **示例**: `SELECT * FROM Store_Information WHERE Sales > (SELECT AVG(Sales) FROM Store_Information);` **6. EXISTS** - **功能**: 测试子查询是否至少返回一行数据。 - **示例**: `SELECT * FROM Store_Information WHERE EXISTS (SELECT * FROM OtherStore_Information WHERE Store_Information.store_name = OtherStore_Information.store_name);` **7. CASE** - **功能**: 创建一个条件表达式,基于不同的条件执行不同的操作。 - **示例**: `SELECT store_name, CASE WHEN Sales > 1000 THEN 'High' ELSE 'Low' END AS SalesLevel FROM Store_Information;` **8. 算排名、算中位数、算总合百分比、算累积总合百分比** - **功能**: 这些操作通常涉及到窗口函数如RANK()、PERCENT_RANK()、PERCENTILE_CONT()等,用于更高级的数据分析和报告。 - **示例**: `SELECT store_name, RANK() OVER (ORDER BY Sales DESC) AS SalesRank FROM Store_Information;` 通过掌握以上SQL语句和操作,无论是初学者还是有一定经验的用户,都能有效地管理和分析数据库中的数据。SQL语言的强大之处在于其灵活性和功能的广泛性,允许用户以多种方式查询、更新和维护数据,从而满足各种业务需求和数据分析场景。
剩余50页未读,继续阅读
- 粉丝: 0
- 资源: 5
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助