字符函数:
SELECT
LENGTH ( 'lalala' );
SELECT
LENGTH ( '宋' );
/* 获得参数值得字节个数(一般汉子占3个字节所以的3) */
SELECT
CONCAT ( 'asd', 'we' );
/*拼接字符串*/
SELECT
UPPER( ' abcd' );
/*变成大写*/
SELECT
LOWER( ' ABCD' );
/*变小写*/
SELECT
SUBSTR( ' ABCD', 1, 3 );
/*切片操作,前闭后开*/
SELECT
INSTR( 'ABCD', 'CD' );
SELECT
INSTR( 'ABCD', 'E' );
/*返回第二个参数在第一个参数中第一次出现的位置,若没有出现,则返回0*/
SELECT
RPAD( 'abc', 4, '#' );
/*右填充*/
SELECT
LPAD( 'ABC', 2, '#' );
/*用指定的字符实现左填充指定长度,同时也是结果的最终长度, 原长度大于指定长度,则不进行填充*/
SELECT REPLACE
( 'ABCBCD', 'BC', '#' );
/*替换所有的指定的字符串为另一个字符串*/
数学函数:
SELECT
ROUND( - 1.55 );
/*四舍五入*/
SELECT
ROUND ( 1.547, 2 );
/*保留指定小数的位数*/
SELECT
CEIL ( - 1.0002 );
/*向上取整,返回大于等于该参数的最小整数*/
SELECT FLOOR(9.99999);
/* 向下取整,返回小于等于该参数的最大整数 */
SELECT TRUNCATE (1.6699,2);
/*指定从小数点后几位开始截断*/
SELECT MOD(-10,-3)
/*求模运算*/
SELECT ABS(-2);
SELECT ABS(2);
SELECT ABS(0);
/*取绝对值函数*/
SELECT POWER(2,5) ;
SELECT POWER(32,1.0/5);
/*幂函数操作*/
SELECT SQRT(16);
/*开方,要求参数(例子里的16)必须是正整数*/
SELECT RAND();
SELECT RAND(100);
SELECT RAND(100);
/*返回0到1的随机值,若不指定随机种子,
返回值不同;若指定的种子相同则随机值相同*/
日期函数:
SELECT NOW();
/*返回当前系统日期+时间*/
SELECT CURDATE();
/* 返回当前系统日期 */
SELECT DAYNAME(NOW());
/*返回星期几*/
SELECT STR_TO_DATE('10-16#1992', '%m-%d#%Y');
/*将字符串通过指定的格式转化为日期,m是month,d是day,Y是year,,下同*/
SELECT DATE_FORMAT(NOW(), '%m#%d#%Y');
/*将日期转化为指定格式字符串*/
其他函数:
SELECT USER()
/*获取登陆用户名,视自己情况可能不同*/
SELECT DATABASE()
/*获取当前所在数据库名,视自己情况可能不同*/
SELECT VERSION()
/*获取版本号,数据库的版本号,视自己情况可能不同*/
流程控制函数:
SELECT IF (10 > 5 , '大' , '小' );
/*一共三个参数,若第一个参数代表的表达式值为true,
则执行第二个参数代表的表达式,否则执行第三个参数代表的表达式*/
case用法:
/*第一种
#相当于switch case
CASE 要判断的字段或者表达式
WHEN 常量1 THEN 要显示的值1或者与语句1
WHEN 常量2 THEN 要显示的值2或者与语句2
WHEN 常量3 THEN 要显示的值3或者与语句3
ELSE 要显示的值x或者与语句x
END
第二种
#相当于多重if
#相当于switch case
CASE
WHEN 条件1 THEN 要显示的值1或者与语句1
WHEN 条件2 THEN 要显示的值2或者与语句2
WHEN 条件3 THEN 要显示的值3或者与语句3
ELSE 要显示的值x或者与语句x
END*/