SQL基本函数学习01

学习目标:

SQL基本函数学习

  • [1] Having语句用法
    例:查询总人口数至少为3亿的大洲和其平均GDP,其中只有GDP高于200亿且人口数大于6000万或者GDP低于80亿且首都中含有3个a的国家计入计算,最后按国家数从大到小排序,只显示第一行

代码(错误):

select continent ,gdp/population from world
where gdp>20000000000 and population>60000000
or
gdp<80000000000 and name like '%a%a%a%'
group by continent
having sum(population)>=300000000
order by count(name) desc
limit 1

代码(修改后):

select continent ,avg(gdp) 平均GDP from world
where (gdp>20000000000 and population>60000000)
or
(gdp<80000000000 and capital like '%a%a%a%')
group by continent
having sum(population)>=300000000
order by count(name) desc
limit 1

学习笔记:

  • 平均GDP可以用聚合函数AVG
  • Where引用的多条件查询需要使用括号区分顺序
  • SQL运行原理:from–where–group by–having–order by–limit–select
  • group by语句相当于为excel建立了数据透视的行标签
  • Having语句筛选满足条件的分组
  • Order by对筛选后的数据进行排序
  • Limit对排序后的数据限制显示的行(Limit(位置偏移量),行数)例如显示20到30行的数据,limit(19,11):19为起始行-1

函数:

  • [1] round(x,y) 对x四舍五入保留y位小数;y为负数则保留小数点左边相应的位数为0,如round(15.13,-1)返回10
  • [2] concat(s1,…,sn)连接字符串函数,如果其中一参数为null,则返回null,如concat(‘my’,‘SQL’)返回my SQL
  • [3] replace(s,s1,s2)用s2代替字符串中所有的s1
  • [4] substring(s,n,len)返回字符串s从第n个字符其取长度为len的字符串,n可以为负值,则从倒数第n个字符起取长度为len的字符串,没有len值则取从第n个字符起到最后一位。
  • [5] cast(x as type) 数据类型转换函数,type参数可以写char(n) date time datetime decimal等数据类型
  • [6] 日期时间函数(类似EXCEL)year\month\day
    date_add(date,interval expr type)&date_sub(date,interval expr type)对起始时间进行加减
    -[7] datediff(date1,date2)计算两个日期之间间隔的天数
    -[8] date_format(date,format)将日期和时间格式化
    -[9] case when:1.case value when compare_value then result else; 2.case when condition then result else
  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值