MySQL
lankerens
日常抄代码并给大佬点赞
展开
-
627. 变更性别 ( if 表达式 / case when then else end )
LeetCode:627. 变更性别# Write your MySQL query statement below# IF 表达式 IF( expr1 , expr2 , expr3 ) # expr1 的值为 TRUE,则返回值为 expr2 # expr1 的值为FALSE,则返回值为 expr3update salary set sex = if(sex = 'm', 'f', 'm');# 解法二# Write your MySQL query statement bel原创 2020-12-21 10:34:31 · 193 阅读 · 0 评论 -
182. 查找重复的电子邮箱 ( group by & having )
LeetCode:182. 查找重复的电子邮箱知道使用group by和having。还需要记得优先顺序。where>group by>having>order by# 解法一# Write your MySQL query statement belowselect email from person group by email having count(email) > 1;...原创 2020-12-21 10:25:31 · 252 阅读 · 0 评论 -
176. 第二高的薪水 (利用 limit 查询出第二高)
LeetCode-MySQL : 176. 第二高的薪水使用select distinct salary from employee order by salary desc limit 1,1就可以查询出第二高的了, 但是 null 会不显示输出:{“headers”: [“SecondHighestSalary”], “values”: []}预期结果:{“headers”:[“SecondHighestSalary”],“values”:[[null]]}所以外套一层 se原创 2020-12-08 23:30:34 · 129 阅读 · 0 评论 -
577. 员工奖金 (isnull(exp)、ifnull(exp1, exp2)、nullif(exp1, exp2))
LeetCode-MySQL: 577. 员工奖金isnull(expr)1.1. 如果expr 为NULL,那么ISNULL() 的返回值为 1,否则返回值为 0。ifnull(expr1,expr2)2.1 若expr1不为null,则ifnull()的返回值为expr1;2.2 若expr1为null,则返回expr2的值;nullif(expr1,expr2)3.1 若expr1等于expr2,则返回null,否则返回expr1应避免在WHERE子句中使用IFN原创 2020-12-06 10:17:47 · 185 阅读 · 0 评论 -
175. 组合两个表 (Left Join tablename on)
LeetCode-MySQL: 175. 组合两个表左连接查询# Write your MySQL query statement belowselect firstname, lastname, city, state from person pleft join address a on p.PersonId = a.PersonId;原创 2020-12-06 10:00:07 · 141 阅读 · 0 评论 -
571. 给定数字的频率查询中位数 (sum() over(order by))
LeetCode: 571. 给定数字的频率查询中位数使用 sum() over(order by) 语句 : sum over(order by) 和sum over(partition by) 的用法当某一数字的 正序和逆序累计 均大于 整个序列的数字个数的一半 时即为中位数,将最后选定的一个或两个中位数进行求均值即可。解法:按数字的升序降序 >> 对频率进行累加,两个排序累加出来的结果中频率数都大于整个频率和的一半, 说明这个频率内的数字就是中位数AC SQ原创 2020-12-06 09:53:06 · 779 阅读 · 0 评论