博客
关于我
mysql加强(2)~单表查询、mysql查询常用的函数
阅读量:791 次
发布时间:2023-02-12

本文共 1443 字,大约阅读时间需要 4 分钟。

MySQL 查询语言(DQL)入门指南

一、单表查询

1. 全列/投影查询

单表查询是最基础的操作,主要用于获取表中数据。SELECT 语句用于指定要查询的字段,FROM 用于指定数据来源的表。

  • 语法
    SELECT [Distinct] *|字段[别名] [,字段[别名]]FROM 表名称 [别名][WHERE 条件(s)][ORDER BY 字段 [ASC|DESC] [, 字段 [ASC|DESC], …]]
  • 注意
    • DISTINCT 用于去重。
    • 表名、字段名错误会提示不存在。
    • 查询顺序:fromwhereselectorder bylimit

2. 消除重复

SELECT 结果中去重,可以在 SELECT 后加上 DISTINCT 关键字。

3. 算术操作符与常用查询

  • 算术操作符

    • 加、减、乘、除。
    • 注意:数值与 NULL 运算结果为 NULL
    • 解决方法:使用 IFNULL 函数处理 NULL 值。
    • 示例:
      SELECT ENAME, SAL, COMM, (IFNULL(COMM, 0) + SAL) AS year_incomeFROM emp;
  • 常用查询

    • 比较运算符=!=<><=>=
    • 范围查询BETWEEN ... ANDNOT BETWEEN ... AND
    • 逻辑运算符NOTANDOR(注意优先级:NOT > AND > OR)。
    • 集合查询INNOT IN
    • 模糊查询LIKE 搭配通配符 %_
    • 空值查询IS NULLIS NOT NULL

4. 限定查询(WHERE)

  • 注意事项
    • 字符和日期需用单引号括起。
    • 数字直接书写。
    • 字符大小写敏感,可使用 BINARY 关键字。
    • 日期格式敏感,需遵循特定格式。

5. 结果排序(ORDER BY)

  • 执行顺序SELECTORDER BY
  • 排序方式ASC 升序,DESC 降序。
  • 示例:
    SELECT deptno, (sal * 12) AS year_incomeFROM empORDER BY deptno ASC, year_income DESC;

二、MySQL 查询常用函数

1. 多行统计函数

  • SUM()、AVG()、MIN()、MAX()
  • COUNT() 不计入空值。
  • 注意:分组函数不能在 WHERE 中使用。

2. 单行函数

  • 字符函数
    • CONCAT() 拼接字符串。
    • REPLACE() 替换字符串。
    • SUBSTRING() 截取子字符串。
  • 数字函数
    • ABS()MOD()CEIL()FLOOR()ROUND()TRUNC()
  • 日期函数
    • DATEADD()SUBDATE()NOW()
    • DATEDIFF() 计算日期差。
    • UNIX_TIMESTAMP()FROM_UNIXTIME()
  • 转换函数
    • FORMAT() 将数字转字符串。
    • DATE_FORMAT()STR_TO_DATE()

3. 日期与字符串处理

  • 日期格式%Y-%m-%d %H:%m:%s
  • 示例:
    SELECT date_format(now(), '%Y-%m-%d');
  • 字符串转日期
    SELECT str_to_date('2022/01/25', '%Y/%m/%d');

通过以上内容,可以逐步掌握 MySQL 查询语言的使用方法,完成基础的数据检索与分析任务。

转载地址:http://ymbfk.baihongyu.com/

你可能感兴趣的文章