MySQL查询语句全面解析

2 下载量 15 浏览量 更新于2024-09-02 收藏 56KB PDF 举报
本文档提供了一份详尽的MySQL查询语句整理,涵盖了基本查询到复杂的条件筛选、排序和函数应用,适用于需要学习或复习MySQL查询语法的读者。 MySQL查询语句是数据库操作的基础,用于从数据表中提取所需信息。以下是对文章中提到的一些关键知识点的详细解释: 1. 基本查询:`SELECT * FROM pet` 是最基本的查询语句,它将选取`pet`表中的所有列和行。 2. 选择特定列:`SELECT name, owner FROM pet` 只显示`name`和`owner`这两列的数据。 3. 算术运算与字段别名:`SELECT SIN(1+2) AS sin` 会执行数学运算,并将结果以`sin`为别名显示。 4. WHERE条件:`WHERE`子句用于设置筛选条件,如 `WHERE (birth > '1980' AND species = 'dog') OR species = 'bird'` 会筛选出1980年后出生的狗和所有鸟。 5. 处理NULL值:`WHERE sex IS NOT NULL` 用于查找`sex`列不为空的记录。 6. LIKE操作符:`WHERE owner LIKE '___n%'` 会找到名字中第四位是'n'的所有宠物。 7. IN操作符:`WHERE owner IN ('gwen', 'benny')` 用于找出属于特定列表中的所有主人的宠物。 8. BETWEEN操作符:`WHERE birth BETWEEN '1990' AND '1999'` 用于获取1990年至1999年之间出生的宠物。 9. ORDER BY子句:`ORDER BY owner, name DESC` 按照`owner`升序排列,如果`owner`相同则按`name`降序排列。 10. HAVING子句(未在原文中出现):在GROUP BY语句后使用,用于筛选分组后的结果。 11. 聚合函数:`CHAR_LENGTH()` 返回字符串的字符长度,而`LENGTH()` 返回字节长度。例如 `SELECT owner, LENGTH(owner), CHAR_LENGTH(owner) FROM pet p;` 12. DISTINCT关键字:`SELECT DISTINCT owner FROM pet WHERE species = 'dog'` 用于去除重复的`owner`值,显示所有拥有狗的主人。 13. 日期和时间函数:`LEFT(birth, 4) AS year` 和 `MID(birth, 6, 2) AS month` 从日期中提取年和月,例如 `SELECT name, left(birth, 4) AS year, mid(birth, 6, 2) AS month FROM pet WHERE species IN ('dog', 'cat')`。 14. IN操作符的另一种使用:`WHERE species IN ('dog', 'cat')` 用于同时筛选出狗和猫的信息。 15. 嵌套查询(未在原文中出现):可以在一个查询中嵌套另一个查询,用于更复杂的条件筛选或数据处理。 16. 子查询(未在原文中出现):子查询可以作为主查询的一部分,用于获取满足特定条件的子集。 17. JOIN操作(未在原文中出现):用于连接多个表,根据共同的字段合并数据。 通过这些例子,我们可以看到MySQL查询语言的强大之处,无论是在简单的数据检索还是复杂的数据分析中都能发挥重要作用。学习并熟练掌握这些语句,将有助于更好地管理和操作数据库。