美文网首页
SQL - 查询

SQL - 查询

作者: kopsht | 来源:发表于2020-12-02 10:33 被阅读0次
    1. 单个列
    2. 多个列
    3. 所有列
    4. order by 子句
    5. 多个列排序,并指定方向
    6. where 子句, > ,< ,= ,BETWEEN ,IS NULL
    7. 高级数据过滤
    • and 和 or 并且组合
    • in 指定范围,范围中的每个条件都可以进行匹配
    • not 在where中用来否定后跟条件的关键字
    8. 通配符
    • % 通配符,匹配多个字符
    • _通配符,匹配单个字符
    • [] 通配符,通配指定位置的一个字符
    9.计算字段
    10.使用别名
    11.执行算术计算
    12.数据分组
    • 创建分组: group by (列名), 每一个此列的值成为一行,并得到select指定的数据
    • 过滤分组: 对上述分组进行过滤
    • 排序分组: 与group by 的不同是排序产生输出
    10. 子查询

    仅推荐from子句的子查询(where/select子句中的子查询最好用联结代替,因为效率很低)
    多行子查询(结果集不是单行的)不能出现在select子句中

    where 子句中,可以使用 in(在结果集中), all(比所有结果集都...), any(比结果集中某一个...), exists() 关键字来处理多行表达式结果集的条件判断

    11.联结表 join
    • 创建联结。 用where子句创建联结。
    • 内部联结。 用于两个表之间的等值测试。
    • 联结多个表
    12.高级联结

    无论何时对表进行联结,至少应该有一个列出现在不止一个表中,是被联结的列。

    • 表别名:
    • 自联结: Jim Jones 所在公司工作的所有客户
    • 外部联结:包括了没有关联行的行 上述语句与以下相同
    • 带聚集函数的联结:

    13.组合查询

    在单个查询中从不同的表返回类似的数据
    对单个表执行多个查询,按单个查询返回数据

    • 创建组合查询

    union中每个查询必须包含相同的列、表达式或聚集函数(顺序可以不同)
    不同类型会做隐式类型转换

    • 包含重复项 用union all 代替 union
    • 对组合查询结果排序



    函数

    文本处理函数
    日期和时间处理函数

    DATEPART(yy, order_date)
    参数1: 返回成分
    参数2: 从中返回成分的日期

    数值处理函数
    聚集函数: 运行在行组上,计算和返回单个值的函数

    1 avg函数忽略值为null的行
    2 count函数中,count(*)计数包括null值的列,cout(column)计数不包括null的
    3. 聚合函数可使用 all(默认) 或 distinct(只包含不同的值) 如 select avg(distinct 列名) as avg_price

    子句顺序

    相关文章

      网友评论

          本文标题:SQL - 查询

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