尚硅谷MySQL数据库教程笔记

需积分: 49 3 下载量 48 浏览量 更新于2024-08-05 收藏 53KB MD 举报
"尚硅谷数据库视频笔记总结mysql" MySQL是一个广泛使用的开源关系型数据库管理系统(RDBMS),在各种规模的企业和项目中都有应用。本笔记主要涵盖了MySQL的基础查询操作,这是学习数据库管理的重要部分。 ### 进阶一 - 基础查询 1. **查询表中的单个或多个字段**: 使用`SELECT`语句,指定需要查询的字段,如`SELECT last_name FROM employees`。若要查询多个字段,只需在`SELECT`后列出它们,用逗号分隔,如`SELECT last_name, salary, email FROM employees`。 2. **查询所有字段**: 查询所有字段有两种方式。一是逐一列出所有字段,另一种更简洁的方法是使用星号`*`,表示所有字段,如`SELECT * FROM employees`。 3. **查询常量值和表达式**: `SELECT`语句不仅可以查询字段,还可以输出常量值,如`SELECT 100`或表达式结果,如`SELECT 100 % 98`。 4. **查询函数**: MySQL提供了许多内置函数,例如`VERSION()`用于获取数据库版本。`SELECT VERSION()`会返回当前MySQL服务器的版本信息。 5. **别名的使用**: 别名有助于提高查询语句的可读性,特别是在字段名重复或较长时。可以使用`AS`关键字或简单的空格来设置别名,如`SELECT last_name AS 姓, first_name AS 名 FROM employees`。 6. **去除重复项**: `DISTINCT`关键字用于去除查询结果中的重复项,如`SELECT DISTINCT department_id FROM employees`,将只返回不同的部门编号。 7. **运算符的作用**: 在MySQL中,`+`运算符只执行数值加法,不同于Java中的连接字符串功能。例如,`SELECT 100 + 90`会返回190。 8. **字符串连接**: 要在查询结果中连接两个字段,可以使用`CONCAT()`函数,例如`SELECT CONCAT(last_name, ', ', first_name) AS full_name FROM employees`,这将返回员工的全名。 9. **排序与过滤数据**: 可以通过`ORDER BY`对查询结果进行排序,如按工资降序排列`SELECT salary FROM employees ORDER BY salary DESC`。而`WHERE`子句用于过滤满足特定条件的数据,如`SELECT * FROM employees WHERE department_id = 100`。 10. **分组与聚合函数**: 使用`GROUP BY`对数据进行分组,配合聚合函数如`COUNT()`, `SUM()`, `AVG()`, `MIN()`, `MAX()`等,对分组后的数据进行统计。例如,计算每个部门的平均工资`SELECT department_id, AVG(salary) FROM employees GROUP BY department_id`。 11. **子查询**: 子查询是在一个查询语句内部嵌套另一个查询,用于处理复杂查询。例如,找出薪水高于部门平均薪资的员工`SELECT * FROM employees WHERE salary > (SELECT AVG(salary) FROM employees GROUP BY department_id)`。 这些基础查询技巧构成了MySQL查询的基本框架。随着深入学习,你还将接触到连接查询(JOINs)、视图(Views)、存储过程(Stored Procedures)等高级概念,进一步提升数据管理和分析的能力。在实际应用中,熟练掌握这些知识能帮助你有效地处理和利用数据库中的信息。