MySQL基础查询与高级操作示例
MySQL是一种广泛使用的开源关系型数据库管理系统,本文档提供了关于MySQL查询语句的一些基础示例,旨在帮助用户理解和掌握如何在日常操作中有效地进行数据检索。以下是本文详细讲解的主要知识点: 1. 全表查询:`SELECT * FROM pet` 这个查询语句用于获取pet表中的所有列和行,适用于初步了解表结构或获取所有数据的情况。 2. 选择性查询:`SELECT name, owner FROM pet` 只选择name和owner这两列数据,可以减少返回的数据量,提高查询效率。 3. 函数应用:`SELECT sin(1+2) AS in_sum` 使用数学函数计算,虽然在这个例子中可能不符合实际需求,但它展示了如何使用函数处理数值表达式。 4. 条件过滤:`SELECT * FROM pet WHERE (birth > '1980' AND species = 'dog') OR species = 'bird'` 这个查询通过逻辑运算符实现对出生年份和物种的条件筛选,返回符合条件的记录。 5. NULL值处理:`SELECT * FROM pet WHERE sex IS NOT NULL` 用于排除包含NULL值的sex列的记录,这对于数据清洗或分析很有用。 6. 通配符匹配:`SELECT * FROM pet WHERE owner LIKE '__n%'` 使用LIKE操作符进行模糊匹配,这里匹配以'n'结尾的owner值。 7. 列表匹配:`SELECT * FROM pet WHERE owner IN ('gwen', 'benny')` 查询owner字段值在指定列表中的记录。 8. 范围查询:`SELECT * FROM pet WHERE birth BETWEEN '1990' AND '1999'` 用于查找出生日期在特定年份范围内的记录。 9. 排序:`SELECT * FROM pet ORDER BY owner, name DESC` 对结果按owner和name列进行降序排列,可用于展示或报告数据。 10. 分组查询:`SELECT DISTINCT owner FROM pet WHERE species = 'dog'` 仅返回唯一的owner值,适合去除重复的owner。 11. 日期和时间处理: - `SELECT year(birth) AS year, month(birth) AS month` 提取并命名出生日期的年份和月份。 - `SELECT round(2.345, 2), truncate(2.345, 2), mod(323, 5)` 使用数学函数处理小数、四舍五入和取余操作。 - `SELECT now(), curdate(), curtime()` 获取当前日期、日期和时间。 - `SELECT adddate('2007-02-02', INTERVAL 31 DAY)` 计算日期间隔后的日期。 12. 分组和排序的组合:`SELECT name, species, birth FROM pet WHERE owner LIKE '%e%' ORDER BY species, birth DESC` 先根据owner的'e'字符筛选,再按species和出生日期排序。 13. 日期函数:如`year()`、`month()`等,用于提取日期中的年份和月份。 这些查询示例展示了MySQL查询语句的基本语法和功能,熟练掌握它们对于数据库操作和数据分析至关重要。在实际应用中,根据具体需求灵活运用这些查询技巧,可以提高数据检索的效率和准确性。
--列出pet所有的列
select * from pet
--列出指定的列
select name, owner form pet
--直接进行算术运算,对字段起别名
select sin(1+2) as sin
--where条件
select * from pet where (birth>'1980' and species='dog') or species='bird'
--对null的条件
select * from pet where sex is not null
--所有名字第四位是n的宠物信息是
select * from pet where owner like '___n%'
--所有主人名叫gwen或benny的宠物
select * from pet where owner in ('gwen' , 'benny')
--查询出生日期在90年代是宠物,相当与 >= and <=
select * from pet where birth between '1990' and '1999'
--按主人姓名排序,相同的按宠物姓名倒序排列
select * from pet order by owner, name desc
--查询性别为公的宠物,按生日倒序排列
select * from pet where sex='m' order by birth desc
--char_lenngth()返回的字符的长度,length()返回字节长度
SELECT owner,length(owner),char_length(owner) FROM pet p;
--列出养有宠物狗的人名
select distinct owner from pet where species='dog'
--用两种方法查询出所有狗和猫的名字、出生年份、出生月份
select name, left(birth,4) as year, mid(birth, 6, 2) as month from pet
下载后可阅读完整内容,剩余4页未读,立即下载
- 粉丝: 8
- 资源: 10
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦