1、时间增加或减少。

DATE_SUB(CURRENT_DATE,INTERVAL 7 day)
DATE_add(CURRENT_DATE,INTERVAL 7 day)

2、取第一条数据

不能通过 order by 加group by 取最新的一条。只有通过两个表连接才能实现。

3、空字符串和空值

同时去掉空格和空 where ISNULL(name)=0 and LENGTH(trim(name))>0,ltrim和rtrim

4、字符串

substring_index(“待截取有用部分的字符串”,“截取数据依据的字符”,截取字符的位置N)N可为负数。
首先,设待处理对象字符串为“15,151,152,16”(虽然这里指的不是iP,可以看作是IP来处理吧)这里截取的依据是逗号:“,”。 具体要截取第N个逗号前部分的字符。

5、表连接

注意左连接可能比原来条数多。cross_join,可以创造数据。使用内连接注意重复数据。

6、行列转化

原始数据

处理后

sql

SELECT a.id
, a.NAME
, substring_index(substring_index(a.shareholder, ',', b.help_topic_id + 1), ',', - 1) AS shareholder
FROM company a
INNER JOIN mysql.help_topic b
ON b.help_topic_id < (length(a.shareholder) - length(REPLACE(a.shareholder, ',', '')) + 1)

https://developer.aliyun.com/article/1135130

7 替换

mysql中replace函数直接替换mysql数据库中某字段中的特定字符串,不再需要自己写函数去替换,用起来非常的方便。 mysql 替换函数replace()
Tips:
table_name —— 表的名字
field_name —— 字段名
old_str —— 需要替换的字符串
new_str —— 替换成的字符串

8类型转化

CAST(expression AS TYPE) 函数可以将任何类型的值转换为具有指定类型的值,利用该函数可以直接在数据库层处理部分因数据类型引起的问题。
以下为该函数支持的数据类型