数据库函数
SQL 中提供了很多数据库函数,如数学函数,字符串函数,日期函数等。使用 SQL 内建的函数,应该比我们取到数据后自行计算速度快。
数学函数
SQL 标准中只有四个函数,但是主流数据库系统提供了大量常用的数学函数。
求绝对值
ABS() 函数用来返回一个数值的绝对值
SELECT FWeight - 50,ABS(FWeight - 50) FROM PERSON;
求指数
POWER()函数是用来计算指数的函数。接受两个参数,待求幂的表达式和幂。
求平方根
SQRT()函数用来计算待求值的平方根。
随机数
1.MySQL 在 MySQL 中提供了 RAND() 函数,用来生成随机数。
SELECT RAND();
2.MS SQL Server
支持随机数种子
SELECT RAND(9527)
3.Oracle
Oracle 没有内置的随机数函数,可以使用 dbms_random 包
SELECT dbms_random.value FROM dual
4.DB2
SELECT SYSFUN.rand() FROM SYSIBM.SYSDUMMY
求余
使用 MOD() 函数,或者在 MS SQL Server 中直接使用 %
SELECT MOD(FWeight , 5) FROM PERSON;
SELECT FWeight % 5 FROM PERSON;
字符串函数
字符串函数在数据库中会经常用到
计算字符串长度
LENGTH() 函数用来计算一个字符串的长度
SELECT LENGTH(FNAME) FROM PERSON;
小写转换
LOWER() 函数将一个字符串中字母全部转换为小写
大写转换
UPPER() 函数,突然想到戴老师教我的 CD 的反义词, WU ,cool down 对应 warm up ,拜托,完全是生搬硬套好不好。。还好最后奖励还是有的。
截去字符串两侧的空格
使用 TRIM() 函数将一个字符串两侧的空格截去。
截取子字符串
SUBSTING(string ,start position,length) 函数用来截取子字符串,接受3个参数。