MySQL常用查询语句(底子查询、函数使用、高级查询) ...

打印 上一主题 下一主题

主题 821|帖子 821|积分 2463

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

一、底子查询


  • 选择所有数据

    1. SELECT * FROM 表名;
    复制代码
  • 选择特定列

    1. SELECT 列名1, 列名2 FROM 表名;
    复制代码
  • 带条件的查询

    1. SELECT * FROM 表名 WHERE 条件;
    复制代码
    比方:
    1. SELECT * FROM users WHERE age > 30;
    复制代码
  • 排序查询结果

    1. SELECT * FROM 表名 ORDER BY 列名 [ASC|DESC];
    复制代码
    比方:
    1. SELECT * FROM users ORDER BY age DESC;
    复制代码
  • 限制查询结果的数量

    1. SELECT * FROM 表名 LIMIT 数量;
    复制代码
    或者联合偏移量:
    1. SELECT * FROM 表名 LIMIT 偏移量, 数量;
    复制代码
    比方:
    1. SELECT * FROM users LIMIT 10;  -- 获取前10条记录  
    2. SELECT * FROM users LIMIT 10, 5;  -- 从第11条开始获取5条记录
    复制代码
  • 插入数据

    1. INSERT INTO 表名 (列名1, 列名2, ...) VALUES (值1, 值2, ...);
    复制代码
  • 更新数据

    1. UPDATE 表名 SET 列名1 = 值1, 列名2 = 值2 WHERE 条件;
    复制代码
  • 删除数据

    1. DELETE FROM 表名 WHERE 条件;
    复制代码
二、函数使用


  • 字符串函数

    • CONCAT(str1, str2, ...): 连接字符串
    • LENGTH(str): 返回字符串的长度
    • UPPER(str): 将字符串转换为大写
    • LOWER(str): 将字符串转换为小写
    • TRIM(str): 去除字符串两侧的空格

  • 数值函数

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

  • 日期和时间函数

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

  • 聚合函数

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

三、高级查询


  • 分组和聚合

    1. SELECT 列名, COUNT(*), SUM(列名), AVG(列名) FROM 表名 GROUP BY 列名;
    复制代码

  • HAVING 子句(与 GROUP BY 联合使用,用于过滤分组后的结果)

    1. SELECT 列名, COUNT(*) FROM 表名 GROUP BY 列名 HAVING 条件;
    复制代码

  • 连接(JOIN)表

    • INNER JOIN
    • LEFT JOIN
    • RIGHT JOIN
    • FULL JOIN(在 MySQL 中通常使用 LEFT JOIN + UNION + RIGHT JOIN 来模仿)
      1. SELECT 列名 FROM 表1 INNER JOIN 表2 ON 表1.列名 = 表2.列名;
      复制代码


  • 子查询

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

  • 联合查询(UNION)

    • 使用 UNION 或 UNION ALL 归并多个查询的结果集

  • 使用 DISTINCT 去除重复项

    1. SELECT DISTINCT 列名 FROM 表名;
    复制代码

  • IN 和 NOT IN

    • 用于在 WHERE 子句中指定多个可能的值

  • EXISTS 和 NOT EXISTS

    • 用于查抄子查询是否返回结果

  • CASE 语句

    • 在 SELECT 语句中执行条件逻辑

  • LIKE 和通配     ​​​​​​​

    • %:代表零个、一个或多个字符
    • _:代表一个字符
      1. SELECT * FROM users WHERE name LIKE 'Jo%';  -- 选择名字以 "Jo" 开头的用户
      复制代码

总结  :                                                                                                                                              

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


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


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


  • 明白子查询、连接查询和联合查询的原理和应用,处理复杂数据关系。
  • 留意查询性能,优化查询语句和数据库设计,提高执行效率。
总的来说,MySQL查询语句的学习必要不断实践,通过明白其原理和技巧,可以更有用地管理和分析数据。



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

九天猎人

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表