数据库101:SQL基础与高级查询操作指南

需积分: 9 1 下载量 56 浏览量 更新于2024-07-18 1 收藏 2.06MB DOCX 举报
本篇笔记主要介绍了MySQL(包括MariDB,因为它们在很多场景下是兼容的)的基础操作和扩展操作,适合对数据库查询语句有一定了解的读者进一步深化理解。以下详细阐述了10个关键知识点: 1. **查询所有列**:使用`SELECT * FROM 表名`可以获取表中的所有字段信息。 2. **条件查询(WHERE子句)**:通过`SELECT * FROM students WHERE 条件`,如`SELECT * FROM students WHERE id = 3`,可以筛选出满足特定条件的数据。 3. **查询指定列**:仅需列出需要的列名,例如`SELECT name, age FROM students`,只显示学生的姓名和年龄。 4. **字段别名(AS关键字)**:通过`SELECT 字段1名 AS '姓名', 字段2名 AS '年纪' FROM students`,可以给查询结果的字段起别名,提高可读性。 5. **通过表名查询**:明确列名所属的表,如`SELECT students.name, students.age FROM students`,指定从哪个表中提取数据。 6. **表别名**:通过`SELECT 别名.字段1, 别名.字段2 FROM 表名 AS 别名`,为表取一个简短的别名,如`s`,简化查询语句。 7. **消除重复行(DISTINCT)**:`SELECT DISTINCT 字段名 FROM 表名`用于去除查询结果中的重复值,如`SELECT DISTINCT age FROM students`。 8. **条件运算符**:使用比较运算符(>、<、>=、<=、<>等)进行精确或范围筛选,如: - `SELECT * FROM students WHERE age > 18`:查找年龄大于18的学生。 - `SELECT * FROM students WHERE age > 18 AND age < 28`:同时满足两个条件的记录。 - `SELECT * FROM students WHERE age > 18 OR high > 180`:任一条件满足即可。 9. **模糊查询(LIKE)**:使用通配符进行模式匹配: - `%`代表任意数量的字符,如`SELECT * FROM students WHERE name LIKE '%小%'`查找包含“小”的名字。 - `__`表示两个字符,如`SELECT * FROM students WHERE name LIKE '__'`找两个字符的名字。 - `__%`表示两个字符后面跟着任意字符,如`SELECT * FROM students WHERE name LIKE '__%'`找至少两个字符的名字。 10. **总结与扩展**:以上内容涵盖了基础的SQL查询语法,但实际应用中可能还会涉及到聚合函数、JOIN操作、GROUP BY、ORDER BY等更高级的查询技巧。熟练掌握这些基本操作后,可以进一步探索和优化数据库查询性能,提升数据处理能力。 本笔记不仅适用于初学者,也适合有一定经验的开发者回顾和巩固基础知识,对于数据库管理和数据分析人员具有较高的参考价值。