大连h5建站,新上线的网站怎么做优化,浙江网站改版设计公司,如何制造一个网页MySQL -函数
常用字符串函数SELECT... 函数 功能 CONCAT#xff08;S1#xff0c;S2....Sn#xff09; 字符串拼接 LOWER#xff08;str#xff09; 将字符串str全部改成小写 UPPER(str) 将字符串str全部改成大写 LPAD(str,n,pad) 左填充#xff0c;用字符串pa…MySQL -函数
常用字符串函数SELECT... 函数 功能 CONCATS1S2....Sn 字符串拼接 LOWERstr 将字符串str全部改成小写 UPPER(str) 将字符串str全部改成大写 LPAD(str,n,pad) 左填充用字符串pad对str的左边进行填充达到n个字符串长度 RPAD(str,n,pad) 右填充用字符串pad对str的右边进行填充达到n个字符串长度 TRIM(str) 去掉字符串头部和尾部的空格 SUBSTRING(str,start,len) 返回从字符串str从start位置起的len个长度的字符串
实例
-- CONCAT拼接字符串
select CONCAT(hello, MySQL);
-- lower 全部转换小写
select lower(HELLO);
-- upper 全部转换大写
select upper(hello);
-- lpadz 左填充
select lpad(01,5,-);
-- rpad 右填充
select rpad(01,5,-);
-- TRIM 去掉字符串头部和尾部的空格
select trim( HELLO world );
-- SUBSTRING 返回从字符串str从start位置起的len个长度的字符串
select SUBSTRING(HELLO MYSQL,1,5);
练习由于业务需求变更企业员工的工号统一为5位数目前不足5位数的全部在前面补0。比如: 1号员工的工号应该为00001
update emp set wordno lpad(wordno ,5,0);
常用数值函数 函数 功能 CEIL(X) 向上取整 FLOOR(X) 向下取整 MOD(X,Y) 返回x/y的模 RAND() 返回0~1内的随机数 ROUND(X,Y) 求参数X的四舍五入的值保留Y位小数
实例
-- ceil() 向大取整
select ceil(1.2);
-- floor() 向下取整
select floor(1.2);
-- mod(x,y) 返回x/y的模(取余)
select MOD(5,2);
-- rand();
select rand();
-- round(X,Y)求参数X的四舍五入的值,保留Y位小数
select round(5.4556,2);
-- 通过数据库的函数生成一个六位数的随机验证码。
select lpad(ceil(rand()*1000000),6,0); MySQL--日期函数 函数 功能 CURDATE() 返还当前日期 CURTIME() 返还当前时间 NOW() 返还当前日期和时间 YEAR(DATE) 获取指定date的年份 MONTH(DATE) 获取指定date月份 DAYDATE 获取指定DATE的日期 DATE_ADD(DATE,INTERVAL EXPR TYPE) 返回一个日期/时间加上一个时间间隔expr后的时间值 DATEDIFF(DATE1,DATE2) 返回起始时间DATE1和结束时间DATE2之间的天数
实例
-- CURDATE()当前日期
select CURDATE();
-- CURTIME() 当前时间
SELECT CURTIME();
-- NOW()
SELECT NOW();
-- YEAR,MONTH,DAY获取指定date的年/月/日
SELECT YEAR(NOW());
SELECT MONTH(NOW());
SELECT DAY(NOW());
-- DATE_ADD(DATE,INTERVAL EXPR TYPE) 往后推的时间
SELECT DATE_ADD(NOW(),INTERVAL 70 DAY);
SELECT DATE_ADD(NOW(),INTERVAL 70 MONTH);
SELECT DATE_ADD(NOW(),INTERVAL 70 YEAR);
-- DATEDIFF(DATE1,DATE2) 两日期的差别
SELECT DATEDIFF(NOW(),2020-11-11);
案例查询所有员工的入职天数并根据入职天数倒叙排序。
select name , datediff(now(),entrydate) as 入职天数
from emp
order by 入职天数 desc; 流程控制函数
流程控制函数在SQL语句中实现条件筛选从而提高语句的效率 函数 功能 IF(value,t,f) 如果value为true则返回t否则返回f IFNULL(value1,value2) 如果value1不为空返回value否则返回value2 CASE WHEN [val1] THEN [res1] ... ELSE [default] END 如果value为true返回res1,...否则返回default默认值 CASE [expr] WHEN [val1] THEN [res1] ... ELSE [default] END 如果expr的值等于val1返回res1, ... 否则返回default默认值。
-- IF()
SELECT IF(TRUE,OK,ERROR);
-- IFNULL(1,2)如果第一个值不为空就返回第一个值否则返回第二个值
SELECT IFNULL(OK,DEFAULT);
SELECT IFNULL(,DEFAULT);
SELECT IFNULL(NULL,DEFAULT);
-- case when then else end
-- 需求查询emp表的员工姓名和年龄(18 ---刚成人 20 --- 成人两年了其他--- 其他)
select name,case age when 18 then 刚成人 when 20 then 成人两年了 else 其他 end
from emp;
案例:
统计班级冬个些员的成绩展示的规则如下: 85展不优秀; 60展示及格否则展示不及格
select name,grade,case when grade 85 then 优秀 when grade 60 then 及格 else 不及格 end as是否及格
from emp;