zoukankan      html  css  js  c++  java
  • (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

    四.复合条件连接查询

    在连接查询后面加上

  • 相关阅读:
    运算符的优先级
    % 取余运算 取模运算
    Java运算符,关系运算符
    自增自减 a++,++a,a--,--a
    Java运算符,算术运算符
    启用div作为编辑器 添加contentEditalbe = “true”,如何让在Html中特殊字符不被转义
    一个合格前端必看的书籍
    JQuery中eq()和get()的区别
    div,contenteditable编辑器之ctrl+enter换行,enter发送
    Angularjs 源码
  • 原文地址:https://www.cnblogs.com/ikonon/p/7786825.html
Copyright © 2011-2022 走看看