zoukankan      html  css  js  c++  java
  • 测试人员需要了解的sql知识(提高篇)

    上一篇写了一些基础的sql知识,这里再深挖一些常用的

    ------------------------------------------------------------------骄傲的分割线--------------------------------------------------------

    常用SQL:

    1,COUNT函数(测试中,适用于计数于指定查询的行数)

    SELECT COUNT(列名) FROM 表名              ---------也可以COUNT(*)代表所有行 

    如果要重命名计数的行

    SELECT COUNT(列名) AS 自定义列名 FROM 表名    --------列名前加DISTINCT代表去除重复行

    2,SUM函数(测试中,适用于合计所指定查询列的值)

    SELECT SUM(列名) FROM 表名        -------统计该列的数据和

    3,Group By函数(测试中,根据一列或多列对结果集进行分组)

    SELECT 列名, 聚合函数(列名) FROM 表名   ---------这函数一般是合计函数
    WHERE 列名 操作符 值
    GROUP BY 列名                     -------这个列名要与第一个列名一致,数量也一致

    4,Having函数(测试中,通常与GROUP BY语句联合使用,过滤由GROUP BY语句返回的记录集

    SELECT 列名, 函数(列名) FROM 表名
    WHERE 列名 操作符 值
    GROUP BY 列名 
    HAVING 聚合函数(列名) 操作符 值        --------这里WHERE就不能代替HAVING

    5,Inner Join内连接(测试中,与join相同,交叉捆绑多个表的数据,如果表中有至少一个匹配,则返回行)

    SELECT 表A.列名, 表B.列名 FROM 表A        --------需要在列前加上对应的表名
    INNER JOIN 表B 
    ON 表A.主键 = 表B.主键             

    6,Left Join外连接(测试中,从左表那里返回所有的行,即使在右表中没有匹配的行)

    SELECT 表A.列名, 表B.列名 FROM 表A 
    LEFT JOIN 表B
    ON 表A.主键 = 表B.主键

    其中Right Join与其相反,从右表那里返回所有的行,即使在左表中没有匹配的行

    7,Union Join操作符(测试中,适用于合并两个或多个 SELECT 语句的结果集)

    多个select语句必须拥有相同数量的列,列也必须拥有相似的数据类型,同时,每条 SELECT 语句中的列的顺序必须相同。

    SELECT 列名 FROM 表A       -------默认显示唯一值,需要显示重复的值,用 UNION ALL
    UNION
    SELECT 列名 FROM 表B
  • 相关阅读:
    [转]十步完全理解SQL
    [转]Java日期时间使用总结
    [转]Mybatis出现:无效的列类型: 1111 错误
    [转]java.lang.OutOfMemoryError: PermGen space及其解决方法
    [转]Spring3核心技术之事务管理机制
    [转]Spring的事务管理难点剖析(1):DAO和事务管理的牵绊
    设计模式之装饰模式
    进程通信
    设计模式之备忘录模式
    设计模式之单例模式
  • 原文地址:https://www.cnblogs.com/qgc1995/p/9674678.html
Copyright © 2011-2022 走看看