mysql 高级操作

ゝ一纸荒年。 2024-02-19 12:20 96阅读 0赞
  1. -- --------------------------------------------------
  2. -- mysql 函数
  3. -- SOUNDEX() 转换为语音值,可以将一个字符串转换为描述其语音表示的字母数字模式
  4. SELECT *
  5. FROM USER
  6. WHERE SOUNDEX(username) = SOUNDEX('rot');
  7. -- NOW()返回当前系统时间
  8. SELECT NOW();
  9. -- AVG() 返回某列的平均值
  10. SELECT AVG(DISTINCT prod_price) AS avg_prod_price
  11. FROM products
  12. -- -------------------------------------
  13. -- ------------------------------------
  14. -- ORDER BY 排序
  15. -- 先按prod_price降序,再按prod_name 升序
  16. SELECT * FROM products
  17. ORDER BY prod_price DESC, prod_name ASC;
  18. -- GROUP BY 分组
  19. -- GROUP BY 可以按一列或多列进行分组
  20. -- GROUP BY 按分组字段进行排序后,ORDER BY 可以以汇总字段来进行排序。
  21. SELECT prod_id, prod_name, COUNT(vend_id) AS vend_id
  22. FROM products GROUP BY vend_id;
  23. -- 分组后排序
  24. SELECT prod_id, prod_name, COUNT(vend_id) AS vend_id
  25. FROM products GROUP BY vend_id
  26. ORDER BY prod_id DESC;
  27. -- --------------------------------------------------
  28. /*
  29. HAVING 用于对汇总的 GROUP BY 结果进行过滤。
  30. HAVING 要求存在一个 GROUP BY 子句。
  31. WHERE 和 HAVING 可以在相同的查询中。
  32. HAVING vs WHERE
  33. WHERE 和 HAVING 都是用于过滤。
  34. HAVING 适用于汇总的组记录;而 WHERE 适用于单个记录
  35. */
  36. SELECT prod_id, prod_name, COUNT(vend_id) AS num
  37. FROM products
  38. WHERE prod_name IS NOT NULL
  39. GROUP BY vend_id
  40. HAVING COUNT(vend_id) >= 2;

发表评论

表情:
评论列表 (有 0 条评论,96人围观)

还没有评论,来说两句吧...

相关阅读

    相关 MySQL高级

    MySQL逻辑架构 > mysql分层思想 和其他数据库相比,MySQL有点与众不同,它的架构可以在多种不同场景中应用并发挥良好作用。主要体现在存储引擎的架构上。