处理字符:

1:concat('aaa', 'bbb', 'ccc')

拼接字符串,oracle也有这个方法不过只能拼接2个,而且一般用 ‘||’ 。。

mysql中‘||’表示或。相当于or

 

2:ifnull(name,'aaa')   

当name = null时,返回'aaa'

 

3.upper('aaa'),lower('AAA')

变为大写,小写

 

4.substr

substr('abc张三', 1, 4) = abc张

从第一个字符开始,截取4位

substr('abc张三', 4) = 张三

从第4个字符开始截取到最后(字符包括汉字,每个汉字是一个字符)

mysq的lindex是从1开始- -,比较搞。。。

 

5.length

length('abc张三')  = 9

length是字节长度,mysql汉字等于 3个字节,字母和符号时1个。

也挺搞的 - -

 

6.instr

instr('aaa', 'abcaaabbbcccaaa') = 4

返回子串在父串第一次出现的位置,没有返回0

 

7.trim

trim('a' from 'aaabbbaaabbbaaa') = 'bbbaaabbb'

去掉前后的a

trim('   aaa   ') = 'aaa'

去掉前后空格

 

8.lpad,rpad

lpad('张三', 5, 'aaa') = aaa张三

左边填充aaa直到字符串有5个字符

rpad('张三', 8, 'ab') = 张三ababab

右边填充ab直到字符串有8个字符。 

 

9.replace

replace('张三李四王五', '王五', '赵六') = 张三李四赵六

替换

 

数字方法

1.round

 

round(1.23) = 1

四舍五入

 

round(1.23, 1) = 1.2

四舍五入留1位

 

ceil

向上取整

cell(1.6) = 2

ceil(-1.6) = -1;

 

floor

向下取整

 

truncate

截断

 

2.mod

mod(10,3)  = 10%3 = 1

mod(-10,-3) = -1

 

3.abs

abs(-111) = -1

abs('aaa') = 0

取绝对值,不是数字返回0

 

日期:

1. now()

当前时间

mysql - 常用方法

 

 

2.curdate

当前日期,不包含时间

mysql - 常用方法

 

 

3.currenttime

当前时间

 

4.year()

year(now()) = 2019

year('2019-05-26') = 2019

year('1990/05/26') = 1990

获取括号中日期的年份,日期格式的字符串也可以

month,day,hour等同理

month('2019-05-26') = 5

monthname('2019-05-26') = May

 

5. str_to_date()

mysql - 常用方法

 

 把字符串按照后面的格式解析变为时间,错误返回null

%Y = 4位年份, %y = 2位年份

%m = 月(01,02), %c = 月(1,2) , 这两个貌似测试的时候混了也没事。。。

%d = 日

%H = 24制小时, %h = 12制小时     如果%h 而小时是20不会自动转化,会错误返回null

%i = 分

%s = 秒 

 

 

6.date_format

mysql - 常用方法

 

7。时间差

datediff (天数差)

select datediff(now(),'1990-05-26');

 

timestampdiff ( 单位, date1, date2)

SELECT TIMESTAMPDIFF(YEAR, '1990-05-26', NOW()),
TIMESTAMPDIFF(MONTH, '1990-05-26', NOW()),
TIMESTAMPDIFF(DAY, '1990-05-26', NOW()),
TIMESTAMPDIFF(HOUR, '1990-05-26', NOW()),
TIMESTAMPDIFF(MINUTE, '1990-05-26', NOW()),
TIMESTAMPDIFF(SECOND, '1990-05-26', NOW());

前面的时间 - 后面的时间,结果可以为负数

 

数据库方法:

1.version()

版本号

 

2.database()

显示当前数据库名

mysql - 常用方法

 

 

3.user()

当前用户

mysql - 常用方法

 

 

流程控制函数:

1.if

if(条件,条件为true时,条件为false时)

mysql - 常用方法

 

 

2.case

mysql - 常用方法

 

 case 参数

when 值1 then 结果1,

when 值2 then 结果2,

...

else 其他情况结果

end 

mysql - 常用方法

 

 

 case

when 条件1 then 结果1,

when 条件2 then 结果2,

...

else 其他情况结果

end 

 

 

 

 

 

与标题无关的笔记。。。

排序

order by name desc, id asc 

按名字从大到小排列(字符串从头开始依次比较asc码),name相同时,按id从小到大排列

 

 

相关文章:

  • 2021-12-29
  • 2022-12-23
  • 2022-12-23
  • 2022-03-05
  • 2021-07-10
  • 2022-12-23
猜你喜欢
  • 2022-01-27
  • 2022-12-23
  • 2022-01-11
  • 2021-12-07
  • 2021-11-13
相关资源
相似解决方案