sql中的一些函数:方法

Sql中一些函数/方法

Sqlserver

ISNULL(check_expression, replacement_value)

check_expression为null时取replacement_value的值

CASE case_value
	WHEN when_value THEN statement_list
	ELSE statement_list
END

case具体来说算是特殊语句,sqlserver中似乎不存在和mysql中的IF(expr,v1,v2)类似函数,可以使用此语句替代,case_value写的时候个人觉得类似于java中的switch语句,不写的时候则直接去判断WHEN后面表达式的真假,类似ifelse语句,WHEN语句可以存在多条

COALESCE(expression [,...n])

COALESCE用于取多个表达式中非null的值,参数可传多个表达式,可以取代ISNULL的嵌套使用

ROW_NUMBER() OVER ([PARTITION BY partition_expression, ... ] ORDER BY sort_expression [ASC | DESC], ...)

ROW_NUMBER函数可用根据PARTITION BY后的字段对数据进行分组后进行排序,然后给每条记录打上序号,每组内的序号从1开始,此函数可用于根据多个字段去重,或者取每一个分组的前几条数据

select count(case when s.sex='男' then 1 else null end)as 男生人数 ,count(case when s.sex='女' then 1 else null end)as 男生人数 from  student  s

count()、sum()函数内加条件可以只统计满足条件的数据

工作遇到一点就更新一点

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值