SQL查询语句入门篇2-四大常用查询句式

上次内容讲解了SQL查询需要的基本元素。今天将继续介绍SQL查询的四大常用句式:① where过滤句式 ② group by分组句式 ③ order by排序句式 ④Having过滤句式。

句式1:where过滤句式

一般数据库表存储大量的信息,但是我们查询时并不需要用到所有数据。

这时就可以通过where过滤语句来筛选出指定的数据信息。

where过滤句式可以参考Excel中的筛选框的逻辑

Excel筛选框可以筛选包含、等于、大于小于、介于等功能。

where过滤语句也能实现Excel筛选框的功能,而且相对来说更灵活,并且可以结合函数使用,大大降低了筛选操作的难度。

基本where过滤句式的用法如下:

select 字段1 

from 表名 

where name='张三' #条件

下图是常用的where过滤语句的操作符,联用能应付大部分筛选问题。

例1,现在有一张订单表 order,我们需要查询创建时间(created_time)在2019年1月10号-2019年6月底之间,注册城市(city)是北京、上海、广州这三个城市的订单信息(包括order_id,city,created_time,amount,product等)。

SQL代码如下:

select order_id,city,created_time,amount,product from order 

where created_time>'2019-01-10' and created_time<'2019-07-01' and city in ('北京','上海','广州')

这个案例中我们用到了操作符>、<、and、in等,实现了需要完成的任务。

句式2:Group by 分组句式

就像where 过滤语句需要有操作符搭配运用,那么与Group by 分组语句并肩作战的就是聚合函数。

在学习Goup by 分组语句之前,首先需要了解下聚合函数的意义及用法。

聚合函数就是对对一组值执行计算,并返回一个值。

比如求平均就是一个聚合函数。

常用的聚合函数包含以下这些:

基本Group by 分组句式的用法如下:

select 字段1,字段2,count(*) 聚合函数

from 表名 

group by 字段1,字段2

例2,现在有一张订单表 order,我们需要查询创建时间(created_time)在2019年1月10号-2019年6月底之间,注册城市(city)是北京、上海、广州的订单号数量,统计方式是按每月和城市统计。

SQL代码如下:

select left(created_time,7) 月份,city,count( order_id) 订单号数量 

from order 

where created_time>'2019-01-10' and created_time<'2019-07-01' and city in ('北京','上海','广州') 

group by left(created_time,7) ,city 

这个案例我们用到了count()函数、where过滤语句以及group by 分组语句。

解释下逻辑:

left(created_time,7) 取的是created_time的前7位,也就是年月, 加上city是我们需要分组的字段,count(order_id)  就是对这两个分组字段分别进行计数。

句式3:Order by 排序句式

通常人的阅读习惯是按顺序进行的,比如看新闻或者朋友圈时都是从早到晚的顺序刷新闻。

SQL中的order by 语句就是排序句式,用来实现排序的功能。

排序方法主要有以下2种情形:

基本Order by 排序句式的用法如下:

select 字段1,字段2

from 表名 

order by 字段1,字段2

【小贴示】Order By 语句默认是按照升序排列。

例3,现在有一张订单表 order,我们需要查询创建时间(created_time)在2019年1月10号-2019年6月底之间,注册城市(city)是北京、上海、广州的订单号数量,统计方式是按每月和城市统计,且按月升序排列展示

SQL代码如下:

select left(created_time,7) 月份,city,count( order_id) 订单号数量 

from order 

where created_time>'2019-01-10' and created_time<'2019-07-01' and city in ('北京','上海','广州') 

group by left(created_time,7) ,city 

order by left(created_time,7) #按月份排序,默认是升序排序

这个案例结合了where过滤语句、group by 分组语句和Order by 排序语句。

句式4:Having过滤句式

最后再介绍一种过滤语句-Having过滤语句。

为什么有了Where语句,还要学习Having语句?

主要的原因是WHERE过滤句式无法与聚合函数一起使用。

基本Having 过滤句式的用法如下

select 字段1,字段2

from 表名 

group by 字段1,字段2 

having count(*)>100 #聚合函数 

【小贴士】Having过滤由于要用到分组函数,所以必须要和Group by 分组句式联用。

例4,现在有一张订单表 order,我们需要统计创建时间(created_time)在2019年1月10号-2019年6月底之间,订单数量大于1000的城市名单。

代码如下:

select city,count( order_id) 订单号数量 

from order 

where created_time>'2019-01-10' and created_time<'2019-07-01'

group by city 

having count( order_id)>1000 #订单数大于1000 

总结:

where过滤句式,筛选你想要的信息

Group by分组句式,统计监控必备

Order by排序句式,提高阅读舒适感

Having过滤句式,聚合函数的筛选利器

有兴趣的童鞋可以扫描下方的二维码关注我的微信公众号:数据大作手

定时分享Excel/SQL/Python的一些技巧与心得。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,524评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,869评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,813评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,210评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,085评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,117评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,533评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,219评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,487评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,582评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,362评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,218评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,589评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,899评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,176评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,503评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,707评论 2 335

推荐阅读更多精彩内容