zoukankan      html  css  js  c++  java
  • sql基本查询语句

    查询语句的五中字句:where(条件查询),having(筛选),group by(分组),order by(排序),Limit(限制结果数)

    一 单表查询

    1、查询指定列:select 列名 from 表名;

    2、查询全部的列:select * from 表名(*表示查询表中的所有列)

    3、去除重复行的数据:select distinct 列名 from 表名

    二 指定条件查询  --where

    查询满足条件的元组,一般通过where 语句实现:select 列名 from 表名 where 条件

    例子:

    1、比较:select * from lu_order where sku ='123'

    2、确定范围 :select * from lu_order where stage between 20 and 30

    3、确定集合:select * from lu_order where sku in('123','1232','1232323')

    4、字符匹配:select *from lu_order where sku like '%123_'   (%_指通配符,%可表示任意字符长度的字符,_表示单个字符)

    5、空值:select * from lu_order where sku is null

    6、多重条件逻辑运算: select * from lu_order where sku=‘123’ and type=‘234’

    三  order by使用

    对查出的元组按指定的列(一个或多个)按升序(asc)或降序(desc)排序

    1、升序:select * from lu_order order by id asc

    2、降序:select *  from lu_order where sku=‘122’ order by sku  desc

    四 group by 

    将查询结果按照某一列或多列进行分组,值相等的为一组。一般是为了细化聚合函数的作用对象,若未进行分组,则聚合函数是作用整个查询结果;若分组了,则是每个组一个聚合函数作用。

    常用的聚合函数有:

    例如:

    1、未分组,使用聚合函数:select count(*)  from lu_order--->计算出表中的所有元组数量

    2、分组,使用聚合函数:select ordernumber,count(*)  from lu_order  group by ordernumber--->ordernumber相同的为一组,得出每组中包含的元组数量

    五 having子句

    对分组后的结果进行筛选,得出符合条件的组。注意:使用having则,查询语句中必须使用了group by,否则会报错。

    例如:

    1、select ordernumber,count(*)  from lu_order  group by ordernumber having ordernumber in('1','2','3')--->ordernumber相同的为一组,得出每组中包含的元组数量

    六 limit 字句

    限制结果显示的条数。

    例如:

    1、查询前3行的数据:select *  from lu_order limit 0,3

    七  多表查询

    表跟表之间通过某些条件,连接起来。

    1、自然连接:select a.*,b.* from lu_order a,lu_order_detail b where a.ordernumber=b.ordernumber

    2、自身连接:select a.*,b.* from lu_order a,lu_order b where a.ordernumber=b.ordernumber

    3、左连接:select a.*,b.* from lu_order  left out join lu_order_detail

    4、右连接:select a.*,b.* from lu_order  right out join lu_order_detail

    八 嵌套查询

    在select-from-where..称为一个查询块,将一个查询块嵌套在另一个查询块的where或having子句中的就叫做嵌套查询。

    例如:

    1、select  ordernumber,sku,carrier from lu_order  where ordernumber in(select ordernumber from lu_order_detail  where ordernumber='1')

  • 相关阅读:
    Ubuntu 14.04 卸载通过源码安装的库
    Ubuntu 14.04 indigo 相关依赖
    Ubuntu 14.04 indigo 安装 cartographer 1.0.0
    Ubuntu 14.04 改变文件或者文件夹的拥有者
    安装cartographer遇到Unrecognized syntax identifier "proto3". This parser only recognizes "proto2"问题
    Unrecognized syntax identifier "proto3". This parser only recognizes "proto2". ”问题解决方法
    查看所有用户组,用户名
    1卸载ROS
    Ubuntu14.04 软件安装卸载
    Ubuntu14.04系统显示器不自动休眠修改
  • 原文地址:https://www.cnblogs.com/cxx1/p/7171821.html
Copyright © 2011-2022 走看看