美文网首页
常用SQL相关

常用SQL相关

作者: 坤坤坤坤杨 | 来源:发表于2022-04-03 16:05 被阅读0次

1. where和having的区别?

  1. where和having都可以使用的场景:
    当筛选条件在要查询的字段中都有的情况下两者作用的等效的。
select goods_price,goods_name form sw_goods where(having) goods_price >100

当筛选条件不在查询字段中时,只能使用where进行条件过滤。

  1. 只能使用having不能使用where的场景:
    当给字段取别名后,where不能根据别名进行筛选
    ,where后不能使用聚合函数,where 子句的作用是在对查询结果进行分组前将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚和函数,而having是可以的,having是对结果集进行的过滤,在查询返回以后对查询结果进行的过滤操作。

2. 外连接和内连接

  1. 内连接:
    假设A和B进行内连接,使用内连接的话,只要A表和B表能够匹配上的记录都可以查出来,AB两表没有主副之分。
  2. 外连接:
    A和B 进行外连接,AB表中有一张表示主表,另一张表示副表,看谁外连接谁,来决定谁是主表,主要查询主表中的数据,捎带查询副表,当副表中的数据没有和主表中的数据匹配上,副表就会自动模拟出null与之匹配。

3. union和union all

union和union all区别是,union会自动压缩多个结果集合中的重复结果,并同时会进行默认规则的排序,而union all 则将所有的结果全部显示出来,不管是否重复,且不进行排序。

4. 聚合函数

  1. 每个组函数接受一个参数;
  2. 默认情况下,组函数忽略值为null的行,不参与计算;
  3. 有时会使用关键字distinct剔除字段值重复的条数;
  4. 组函数不可以嵌套使用;
  5. 组函数的参数可以是列或函数表达式;
  6. 一个查询语句中可以有多个聚合函数;

4.1 常用函数

  1. GROUP_CONCAT()函数:函数的值等于属于一个组的指定列的所有值,以逗号隔开,并且以字符串表示。

  2. str_to_date(str, format):字符串转日期类型。

  3. date_format(date, format):时间转字符串

  4. INSERT(s1,x,len,s2):字符串 s2 替换 s1 的 x 位置开始长度为 len 的字符串。

  5. LCASE(s) :将字符串 s 的所有字母变成小写字母。

  6. LTRIM(s):去掉字符串 s 开始处的空格。

  7. REPLACE(s,s1,s2):将字符串 s2 替代字符串 s 中的字符串 s1。

  8. STRCMP(s1,s2):比较字符串 s1 和 s2,如果 s1 与 s2 相等返回 0 ,如果 s1>s2 返回 1,如果 s1<s2 返回 -1。

  9. IFNULL(v1,v2):如果 v1 的值不为 NULL,则返回 v1,否则返回 v2。

  10. case when then else end:CASE 表示函数开始,END 表示函数结束。如果 condition1 成立,则返回 result1, 如果 condition2 成立,则返回 result2,当全部不成立则返回 result,而当有一个成立之后,后面的就不执行了。

CASE expression
            WHEN condition1 
    THEN result1
            WHEN condition2
     THEN result2
   ...
            WHEN conditionN
     THEN resultN
            ELSE result
END

相关文章

  • 常用SQL相关

    1. where和having的区别? where和having都可以使用的场景:当筛选条件在要查询的字段中都有的...

  • clickhouse-sql 记录常用操作

    clickhouse-sql 记录常用操作 sql 相关 主要记录 mysql 导入 clickhouse 过程其...

  • SQL常用命令书目录

    SQL常用命令之单表查询 SQL常用命令之多表查询 SQL常用命令之模糊查找 SQL常用命令之空值查询 SQL常用...

  • mysql 操作的常用命令

    sql:SHOWVARIABLESLIKE'character%' mysql学习笔记-常用命令常用sql:SHO...

  • sql注入相关知识

    1.概述 昨天面试被问了sql注入相关的问题,不会,只有自己来学习了 SQL注入攻击是黑客对数据库进行攻击的常用手...

  • java工程师面试内容

    数据库相关: SQL中常用的函数;count() sum() avg() max() if(e1,e2,e3) ...

  • 数据库基础和SQL基础总结

    本文会总结下数据库知识,SQL基础,常用SQL语句总结; 一、数据库基础相关概念 二、数据库重点知识点 三、数据库...

  • mysql数据库优化

    1. Mysql优化介绍 1.1 sql优化 a. sql优化分析b. 索引优化c. 常用sql优化d. 常用优化...

  • SQL语句

    SQL基础应用 SQL语句自动补全 SQL的介绍 SQL-92标准SQL-99标准 image SQL常用分类 表...

  • SQL 常用优化手段总结 - 索引的应用

    系列文章回顾SQL 常用优化手段总结 - 分析 SQL 语句的一般步骤SQL 常用优化手段总结 - 索引的应用SQ...

网友评论

      本文标题:常用SQL相关

      本文链接:https://www.haomeiwen.com/subject/hsyfsrtx.html