• (6)select语句


    一.基本查询语句

    SELECT 属性列表
         FROM表名和视图列表
         [WHERE条件表达式1]
         [GROUP BY 属性名1 [HAVING条件表达式2]]
         [ORDER BY 属性名2[ASC|DESC]]
    

    二.单表查询

    1.带IN关键字的查询
    IN关键字可以判断某个字段是否在集合中

    [NOT] IN (元素1,元素2,……,元素n)
    

    2.BETWEEN AND范围查询

    [NOT] BETWEEN 值1 AND 值2
    

    3.Like字符串匹配查询

    [NOT] LIKE '字符串'
    
    • %:b%k表示b开头,k结尾的任意字符串
    • _ :b_k中间只能插入一个数

    4.查询空值:

    IS [NOT] NULL
    

    5.与或

    条件1 AND 条件2[ …… 条件n-1 AND 条件n]
    条件1 OR 条件2[ …… 条件n-1 AND ORn]
    

    AND与OR一起使用时,AND先运算

    6.消除重复记录

    SELECT DISTINCT 属性名 FROM 表名
    

    7.对查询结果的排序

    ORDER BY 属性名[ASC | DESE]
    

    8.分组查询

    [GROUP BY 属性名1 [HAVING条件表达式2]][WITH ROLLUP]
    
    • [HAVING条件表达式2]:用来限制分组后的显示
    • [WITH ROLLUP]:在所有记录后加上一条记录,值是所有记录的总和

    分组查询还可以和许多函数一起使用:

    • GROUP_CONCAT(属性):每个分组的指定字段都显示出来
    • 集合函数
    • COUNT(属性):显示出记录数
    • SUM()、MAX()、MIN()、AVG()

    9.用LIMIT限制查询结果数量,不指定初始位置就从第一条开始

    LIMIT 记录数
    LIMIT 初始位置,记录数
    

    三.连接查询

    将两个或两个以上的表按照某个条件连接起来,从中选取需要的数据
    1.内连接查询:最常用的连接查询。当两个表中拥有相同意义的字段时,可以通过这个字段来连接两个表;字段值相等时就可以查出这条记录

    可以指父表的主键和子表的外键

     select a.*, b.* from a, b wherea.xid=b.xid
    

    2.外连接查询:字段不相等的记录也可以查询出来

     SELECT 属性名列表 
     FROM 表名1 LEFT|RIGHT JOIN 表名2
         ON 表名1.属性1=表名2.属性2;
    
    • LEFT JOIN:左表全记录,右表符合条件的显示,不存在的显示null
    • RIGHT JOIN:右表全记录,左表符合条件的显示,不存在的显示null

    四.复合条件连接查询

    在连接查询后面加上

  • 相关阅读:
    针式PKM软件进入华军分类下载月排名前6名
    读取xml
    一个简单的记事本程序
    python输出重定向
    重看ATL布幔之下的秘密
    nginx学习(二)动态加载各模块
    ngx_queue的理解
    nginx学习(三)IOCP的使用
    nginx学习(一)内存
    使用python实现一个通用协议测试工具
  • 原文地址:https://www.cnblogs.com/ikonon/p/7786825.html
Copyright © 2020-2023  润新知