MySQL常用查询语句(基础查询、函数使用、高级查询)

2024-07-14 1113阅读

MySQL 的查询语句(通常称为 SQL 查询)是数据库操作中非常重要的一部分。以下是一些基本的 MySQL 查询语句示例,这些示例涵盖了常见的查询类型和用法:

MySQL常用查询语句(基础查询、函数使用、高级查询)
(图片来源网络,侵删)

一、基础查询

  1. 选择所有数据

    SELECT * FROM 表名;
  2. 选择特定列

    SELECT 列名1, 列名2 FROM 表名;
  3. 带条件的查询

    SELECT * FROM 表名 WHERE 条件;

    例如:

    SELECT * FROM users WHERE age > 30;
  4. 排序查询结果

    SELECT * FROM 表名 ORDER BY 列名 [ASC|DESC];

    例如:

    SELECT * FROM users ORDER BY age DESC;
  5. 限制查询结果的数量

    SELECT * FROM 表名 LIMIT 数量;

    或者结合偏移量:

    SELECT * FROM 表名 LIMIT 偏移量, 数量;

    例如:

    SELECT * FROM users LIMIT 10;  -- 获取前10条记录  
    SELECT * FROM users LIMIT 10, 5;  -- 从第11条开始获取5条记录
  6. 插入数据

    INSERT INTO 表名 (列名1, 列名2, ...) VALUES (值1, 值2, ...);
  7. 更新数据

    UPDATE 表名 SET 列名1 = 值1, 列名2 = 值2 WHERE 条件;
  8. 删除数据

    DELETE FROM 表名 WHERE 条件;

二、函数使用

  1. 字符串函数

    • CONCAT(str1, str2, ...): 连接字符串

    • LENGTH(str): 返回字符串的长度
    • UPPER(str): 将字符串转换为大写
    • LOWER(str): 将字符串转换为小写
    • TRIM(str): 去除字符串两侧的空格
  2. 数值函数

    • ROUND(num, decimals): 对数字进行四舍五入
    • CEIL(num): 返回大于或等于给定数字的最小整数(向上取整)
    • FLOOR(num): 返回小于或等于给定数字的最大整数(向下取整)
    • ABS(num): 返回数字的绝对值
  3. 日期和时间函数

    • NOW(): 返回当前日期和时间
    • CURDATE(): 返回当前日期
    • CURTIME(): 返回当前时间
    • DATE_FORMAT(date, format): 格式化日期/时间
    • DAY(date): 返回日期的天数部分
    • MONTH(date): 返回日期的月份部分
    • YEAR(date): 返回日期的年份部分
  4. 聚合函数

    • COUNT(*): 返回匹配的行数
    • SUM(column_name): 返回某列的总和
    • AVG(column_name): 返回某列的平均值
    • MAX(column_name): 返回某列的最大值
    • MIN(column_name): 返回某列的最小值

三、高级查询

  1. 分组和聚合

    SELECT 列名, COUNT(*), SUM(列名), AVG(列名) FROM 表名 GROUP BY 列名;
  2. HAVING 子句(与 GROUP BY 结合使用,用于过滤分组后的结果)

    SELECT 列名, COUNT(*) FROM 表名 GROUP BY 列名 HAVING 条件;
  3. 连接(JOIN)表

    • INNER JOIN

    • LEFT JOIN

    • RIGHT JOIN

    • FULL JOIN(在 MySQL 中通常使用 LEFT JOIN + UNION + RIGHT JOIN 来模拟)

      SELECT 列名 FROM 表1 INNER JOIN 表2 ON 表1.列名 = 表2.列名;
  4. 子查询

    • 在 SELECT 语句中使用子查询
    • 在 FROM 子句中使用子查询(内联视图)
    • 在 WHERE 子句中使用子查询
  5. 联合查询(UNION)

    • 使用 UNION 或 UNION ALL 合并多个查询的结果集
  6. 使用 DISTINCT 去除重复项

    SELECT DISTINCT 列名 FROM 表名;
  7. IN 和 NOT IN

    • 用于在 WHERE 子句中指定多个可能的值
  8. EXISTS 和 NOT EXISTS

    • 用于检查子查询是否返回结果
  9. CASE 语句

    • 在 SELECT 语句中执行条件逻辑
  10. LIKE 和通配     ​​​​​​​

    • %:代表零个、一个或多个字符

    • _:代表一个字符

      SELECT * FROM users WHERE name LIKE 'Jo%';  -- 选择名字以 "Jo" 开头的用户

总结  :                                                                                                                                              

在MySQL学习中,我深入了解了基础查询、函数使用和高级查询。以下是我的简短心得:

基础查询:

  • 掌握SELECT, FROM, WHERE等基本语句,明确表结构和字段含义,确保查询准确。
  • 逻辑清晰,合理使用逻辑操作符,精准筛选数据。

    函数使用:

    • 熟悉常用函数,如字符串处理、日期计算和聚合函数,增强查询功能。
    • 结合函数和查询语句,实现复杂数据处理和分析。

      高级查询:

      • 理解子查询、连接查询和联合查询的原理和应用,处理复杂数据关系。
      • 注意查询性能,优化查询语句和数据库设计,提高执行效率。

        总的来说,MySQL查询语句的学习需要不断实践,通过理解其原理和技巧,可以更有效地管理和分析数据。

VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]