1. mySQL string操作
1、LOCATE(substr , str ):返回子串 substr 在字符串 str 中第一次出现的位置,如果字符substr在字符串str中不存在,则返回0;
2、POSITION(substr IN str ):返回子串 substr 在字符串 str 中第一次出现的位置,如果字符substr在字符串str中不存在,与LOCATE函数作用相同;
3、LEFT(str, length):从左边开始截取str,length是截取的长度;
4、RIGHT(str, length):从右边开始截取str,length是截取的长度;
5、SUBSTRING_INDEX(str ,substr ,n):返回字符substr在str中第n次出现位置之前的字符串;
6、SUBSTRING(str ,n ,m):返回字符串str从第n个字符截取到第m个字符;
7、REPLACE(str, n, m):将字符串str中的n字符替换成m字符;
8、LENGTH(str):计算字符串str的长度。
2. mySQL 窗口函数 rank() over(partition by xx order by xx)
1) 专用窗口函数,比如rank, dense_rank, row_number等
2) 聚合函数,如sum. avg, count, max, min等
3)开窗函数
– dt升序排序,向前6行
partition by tag order by dt rows 6 preceding
partition by tag order by dt rows between 6 preceding and CURRENT row
– dt降序排列,当前行往后6行
partition by tag order by dt desc rows between CURRENT row and 6 following
3.## 时间函数
1) DATE_FORMAT(time, ‘%Y-%m-%d’) 或者 “%H:%i:%S”
2) extract(year from “2019-12-25 22:47:37”) 从时间提前年/月/日
3) datediff(end_date,start_date) 时间做差,得到日期day
4) timestampdiff( day, end_date,start_date) 时间做差,可选择返回的时间类型
- to_date(b.submit_at,‘yyyy-mm-dd hh:Mi:ss’) >= to_date(‘20230101’,‘yyyymmdd’)