mysql
文章平均质量分 54
啊柴啊
再困难也要坚持,没有理由
展开
-
牛客网:统计一下牛客新登录用户的次日成功的留存率之DATE_ADD的用法
题目描述:牛客每天有很多人登录,请你统计一下牛客新登录用户的次日成功的留存率,有一个登录(login)记录表,简况如下第1行表示user_id为2的用户在2020-10-12使用了客户端id为1的设备第一次新登录了牛客网。。。第4行表示user_id为3的用户在2020-10-12使用了客户端id为2的设备登录了牛客网。。。最后1行表示user_id为1的用户在2020-10-14使用了客户端id为2的设备登录了牛客网请你写出一个sql语句查询新登录用户次日成功的留存率,即原创 2021-03-25 16:00:24 · 688 阅读 · 0 评论 -
牛客MySQL:统计正常用户发送给正常用户邮件失败的概率:
题目描述现在有一个需求,让你统计正常用户发送给正常用户邮件失败的概率:有一个邮件(email)表,id为主键, type是枚举类型,枚举成员为(completed,no_completed),completed代表邮件发送是成功的,no_completed代表邮件是发送失败的。简况如下:第1行表示为id为2的用户在2020-01-11成功发送了一封邮件给了id为3的用户;...第3行表示为id为1的用户在2020-01-11没有成功发送一封邮件给了id为4的用户;...第6行表示为id原创 2021-03-24 20:51:26 · 266 阅读 · 0 评论 -
MySQL的排名函数 RANK() OVER、DENSE_RANK() OVER、ROW_NUMBER() OVER 用法介绍
本篇介绍的三个函数均MySQL 8.x 以上版本,8.x以下版本会报语法错误,属于正常现象。MySQL 8.x 实际上就是MySQL 5.8x,大概是为了通过更大版本型号数字,证明自己比友商先进吧。你可以通过 mysql --version (cmd命令)或者 select version() (sql语句)查看MySQL版本型号。RANK() OVER(业务逻辑)作用:查出指定条件后的进行排名,条件相同排名相同,排名间断不连续。说明:例如学生排名,使用这个函数,成绩相同的两名是并列,.转载 2021-03-22 11:07:37 · 1483 阅读 · 1 评论 -
sum(..) over(..)用法
详细见:https://blog.csdn.net/imliuqun123/article/details/80063827原创 2021-03-22 10:19:51 · 308 阅读 · 0 评论 -
CASE WHEN THEN END多条件判断
题目描述:CREATE TABLE `employees` (`emp_no` int(11) NOT NULL,`birth_date` date NOT NULL,`first_name` varchar(14) NOT NULL,`last_name` varchar(16) NOT NULL,`gender` char(1) NOT NULL,`hire_date` date NOT NULL,PRIMARY KEY (`emp_no`));CREATE TABLE `dep原创 2021-03-18 16:15:24 · 926 阅读 · 0 评论 -
获取Employees中的first_name,查询按照first_name最后两个字母,按照升序进行排列
题目:获取Employees中的first_name,查询按照first_name最后两个字母,按照升序进行排列SELECT first_name FROM employees ORDER BY substr(first_name,length(first_name)-1)SELECT first_name FROM employees ORDER BY substr(first_name,-2)select first_name from employees e order by s..原创 2021-03-18 11:40:35 · 525 阅读 · 0 评论 -
查找字符串‘10,A,B‘ 中逗号‘,‘出现的次数cnt。
题目描述:查找字符串'10,A,B' 中逗号','出现的次数cnt。解题思路:①巧用length函数和replace,length函数计算字符串的长度,length("10,A,B")算出整个字符串的长度。②使用replace将 , 替换为空,那么整个字符串减少的长度等于 , 的长度,两者相减就是 , 出现的次数。select length("10,A,B")-length(replace("10,A,B",",",""))...原创 2021-03-18 10:31:21 · 359 阅读 · 0 评论 -
MySQL之You can‘t specify target table for update in FROM clause解决办法
删除emp_no重复的记录,只保留最小的id对应的记录。CREATE TABLE IF NOT EXISTS titles_test (id int(11) not null primary key,emp_no int(11) NOT NULL,title varchar(50) NOT NULL,from_date date NOT NULL,to_date date DEFAULT NULL);insert into titles_test values ('1', '10001', '原创 2021-03-16 10:52:59 · 127 阅读 · 0 评论 -
详解MySQL中concat函数的用法(连接字符串)
MySQL中concat函数使用方法:CONCAT(str1,str2,…)返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。注意:如果所有参数均为非二进制字符串,则结果为非二进制字符串。如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast, 例如: 1 SELECT CONCAT(CAST(int_col AS ..转载 2021-03-18 10:12:09 · 1588 阅读 · 0 评论