数据分析/数据开发
小应的每天进步史
任何的被逼无奈,都只不过是不够强大
展开
-
case when sql
简单CASE WHEN函数:CASE SCORE WHEN 'A' THEN '优' ELSE '不及格' ENDCASE SCORE WHEN 'B' THEN '良' ELSE '不及格' ENDCASE SCORE WHEN 'C' THEN '中' ELSE '不及格' END等同于,使用CASE WHEN条件表达式函数实现:CASE WHEN SCORE = 'A' THEN '优' WHEN SCORE = 'B' THEN '良' WHEN SCORE原创 2021-12-01 15:42:16 · 404 阅读 · 0 评论 -
sql 函数 if 和 ifnull
if函数:if(a,b,c)if判断,如果a满足条件,返回b,否则返回c例子:select sid, count(if(score>=60,sid,null)) from SC group by sid;运行代码满足及格条件的返回学号sid,不满足条件的返回nullifnull函数IFNULL(expression_1,expression_2);如果expression_1不为NULL,则IFNULL函数返回expression_1; 否则返原创 2021-12-01 22:08:20 · 1038 阅读 · 0 评论 -
datediff() 函数
SELECT DATEDIFF(day,'2008-12-29','2008-12-30') AS DiffDateDiffDate 1 SELECT DATEDIFF(day,'2008-12-30','2008-12-29') AS DiffDateDiffDate -1原创 2021-12-01 02:35:23 · 304 阅读 · 0 评论 -
SQL中where与having
where和having的执行顺序where 早于 group by 早于 havingwhere子句在聚合前先筛选记录,也就是说作用在group by 子句和having子句前,而 having子句在聚合后对组记录进行筛选where不能使用聚合函数、having中可以使用聚合函数...原创 2021-11-29 19:49:45 · 645 阅读 · 0 评论 -
abs 函数 sql
ABS 函数 返回一个数值的绝对值 |x|select ABS(-3) 返回结果 3原创 2021-11-29 03:27:57 · 922 阅读 · 0 评论 -
round 函数
SELECT ROUND(column_name,decimals) FROM table_name参数 描述 column_name 必需。要舍入的字段。 decimals 必需。规定要返回的小数位数。原创 2021-11-29 02:34:10 · 143 阅读 · 0 评论 -
sql的窗口函数
计算排名的时候会非常的好用窗口函数的基本语法如下:<窗口函数> over (partition by <用于分组的列名> order by <用于排序的列名>)<窗口函数>的位置,可以放以下两种函数:1) 专用窗口函数,包括后面要讲到的rank, dense_rank, row_number等专用窗口函数。2) 聚合函数,如sum. avg, count, max, min等因为窗口函数是对where或原创 2021-11-19 01:22:00 · 1240 阅读 · 0 评论 -
sql执行的顺序
先执行from关键字后面的语句,明确数据的来源,它是从哪张表取来的。接着执行where关键字后面的语句,对数据进行筛选。再接着执行group by后面的语句,对数据进行分组分类。然后执行select后面的语句,也就是对处理好的数据,具体要取哪一部分。最后执行order by后面的语句,对最终的结果进行排序。...原创 2021-11-19 01:09:23 · 821 阅读 · 0 评论 -
sql重的ifnull 函数
ifnull(a,b)函数解释:如果value1不是空,结果返回a如果value1是空,结果返回b例题:查找 Employee 表中第二高的薪水(Salary)。查询结果返回 200 作为第二高的薪水。如果不存在第二高的薪水,那么查询应返回 null。答案select ifNull((select distinct salaryfrom Employee order by Salary Desclimit 1,1),null) as SecondHighe.原创 2021-11-18 19:08:51 · 576 阅读 · 0 评论 -
sql 中 limit 与 limit,offset连用的区别
select * from table limit 2,1;//跳过2条取出1条数据,limit后面是从第2条开始读,读取1条信息,即读取第3条数据select * from table limit 2 offset 1;//从第1条(不包括)数据开始取出2条数据,limit后面跟的是2条数据,offset后面是从第1条开始读取,即读取第2,3条SELECT * FROM admin_menu LIMIT 2 OFFSET 1; 说明:limit 个数,offset index索引..原创 2021-11-18 19:05:09 · 1087 阅读 · 0 评论