查询语句的五中字句: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')

sql基本查询语句的更多相关文章

  1. SQL逻辑查询语句执行顺序 需要重新整理

    一.SQL语句定义顺序 1 2 3 4 5 6 7 8 9 10 SELECT DISTINCT <select_list> FROM <left_table> <joi ...

  2. 如何在SQL Server查询语句(Select)中检索存储过程(Store Procedure)的结果集?

    如何在SQL Server查询语句(Select)中检索存储过程(Store Procedure)的结果集?(2006-12-14 09:25:36) 与这个问题具有相同性质的其他描述还包括:如何 ...

  3. python 3 mysql sql逻辑查询语句执行顺序

    python 3 mysql sql逻辑查询语句执行顺序 一 .SELECT语句关键字的定义顺序 SELECT DISTINCT <select_list> FROM <left_t ...

  4. mysql第四篇--SQL逻辑查询语句执行顺序

    mysql第四篇--SQL逻辑查询语句执行顺序 一.SQL语句定义顺序 SELECT DISTINCT <select_list> FROM <left_table> < ...

  5. SQL Server SQL高级查询语句小结(转)

    --select select * from student; --all 查询所有 select all sex from student; --distinct 过滤重复 select disti ...

  6. 45、SQL逻辑查询语句执行顺序

    一 SELECT语句关键字的定义顺序 SELECT DISTINCT <select_list> FROM <left_table> <join_type> JOI ...

  7. sql的查询语句的总结

    一:基本的查询sql 1:基本常用查询 select * from student; --select select all sex from student; --all 查询所有 select d ...

  8. NumberFormatException: Invalid int类型不匹配异常——使用SQL数据库查询语句select * from blacknumber order by _id desc limit ?,20;出现

    异常:类型不匹配 05-06 08:12:38.151: E/AndroidRuntime(14904): java.lang.NumberFormatException: Invalid int: ...

  9. 第四篇:记录相关操作 SQL逻辑查询语句执行顺序

    http://www.cnblogs.com/linhaifeng/articles/7372774.html 一 SELECT语句关键字的定义顺序 SELECT DISTINCT <selec ...

  10. SQL逻辑查询语句执行顺序

    阅读目录 一 SELECT语句关键字的定义顺序 二 SELECT语句关键字的执行顺序 三 准备表和数据 四 准备SQL逻辑查询测试语句 五 执行顺序分析 一 SELECT语句关键字的定义顺序 SELE ...

随机推荐

  1. 解决AS gradle下载同步卡慢的问题

    国内因为GFW的原因,导致同步谷歌等服务器的插件源非常非常慢,几乎是龟爬,还好有阿里云的镜像源,据说速度很快,还不快试试: 1.build.gradle里的buildscript和allproject ...

  2. es6 Map,Set 和 WeakMap,WeakSet

    这些是新加的集合类型,提供了更加方便的获取属性值的方法,不用像以前一样用hasOwnProperty来检查某个属性是属于原型链上的呢还是当前对象的.同时,在进行属性值添加与获取时有专门的get,set ...

  3. string.format格式化字符串中转义大括号“{}”

    今天,用Java读取配置文件占位符,使用String.Format(string format,object arg0)方法.以前只知“{0}”为索引占位符(即格式项),与参数列表中的第一个对象相对应 ...

  4. ubuntu ibus pinyin输入法异常

    http://blog.csdn.net/granvillegao/article/details/41115211 命令行运行 ibus-setup 在常规页面,取消了“在应用程序窗口中启用内嵌编辑 ...

  5. 如何禁止某个linux用户访问某些文件夹及执行某些命令

    方案1: 给这个文件A增加个a的隐藏属性,只能增加数据不能删除修改数据,只有root能设置这个隐藏属性 chattr +a A lsattr A 可以查看隐藏属性 方案2: 修改文件所属用户和组,普通 ...

  6. Vue全局API总结

    1.extend用于创建一个子类Vue,用$mount来挂载 <body> <div id="app"></div> <script> ...

  7. BZOJ3437 小P的牧场 动态规划 斜率优化

    原文链接http://www.cnblogs.com/zhouzhendong/p/8696321.html 题目传送门 - BZOJ3437 题意 给定两个序列$a,b$,现在划分$a$序列. 被划 ...

  8. Cyclic Nacklace hdu3746 kmp 最小循环节

    题意:给出一段字符串  求最少在最右边补上多少个字符使得形成循环串(单个字符不是循环串) 自己乱搞居然搞出来了... 想法是:  如果nex[len]为0  那么答案显然是补len 否则  答案为循环 ...

  9. 用yield写协程实现生产者消费者

    思路: yield可以使得函数阻塞,next,和send可以解阻塞,实现数据不竞争的生产者消费者模式 代码: import random #随机数,模拟生产者的制造物 def eat(): #消费者 ...

  10. 001.Amoeba读写分离部署

    一 Amoeba简介 Amoeba(变形虫)项目,该开源框架于2008年 开始发布一款 Amoeba forMysql软件.这个软件致力于MySQL的分布式数据库前端代理层,它主要在应用层访问MySQ ...