MYSQL——MYSQL的常用内置函数

目录

      • 字符串处理函数
      • 日期和时间

字符串处理函数

系统函数:直接调用即可.任何函数都有返回值,函数的调用是通过select调用.因为有返回值,所以只能用select 调用.

Mysql中字符串的操作是以单个字符为单位的

1. substring(原字符串,从那个地方,截取几个); mysql 中下标从1开始算
 例如:set @username='你好世界'; --定义一个变量
      select substring(@username,1,1); -- 从1位置截取一个字符
2. char_length('@username') 字符长度  4 个
   
       length('@username')  字节长度 123. instr(@usernaem,'好') 查找某个字符在一个字符串的位置 如果找到返回此字符的索引,如果没找到返回0
	例如:SELECT INSTR(@username,'好'); 返回2 没有找到返回0
4.lpad (@username,10,'要填充的字符') 左填充:将字符串 按照指定长度填充到旧字符串的左边
	例如: select lpad(@username,10,'欢迎'); 注意10个长度算上原来'你好世界'的这4个长度,也就是说欢迎填充了65.rpad 右填充
6.insert 替换字符串
	例如: select insert(@username,2,2,'哈哈'); 从第二个字符开始替换两个字符 替换成哈哈
7.strcmp(字符串1,字符串2) 比较两个字符串大小 按照字典顺序去比较
	例如: set @a='abc'
	      set  @b='eee';
	      set  @c='Aa'   -- 不区分大小写
	      select strcmp(@a,@b);  返回0
	      select strcmp(@a,@c); 返回 -1
	      select strcmp(@c,@a); 返回 1
8.SELECT UPPER('abc') -- 把小写转换成大写
9.SELECT LOWER('ABC') -- 把大写转换成小写

日期和时间

获取系统日期: NOW()

格式化日期: DATE_FORMAT(date, format)
     注: date:时间字段,format:日期格式
根据format字符串格式化date值:
	%S, %s 两位数字形式的秒( 00,01, …, 59)
    %I, %i 两位数字形式的分( 00,01, …, 59)
	%H 两位数字形式的小时,24 小时(00,01, …, 23)
	%h 两位数字形式的小时,12 小时(01,02, …, 12)
	%k 数字形式的小时,24 小时(0,1, …, 23)
	%l 数字形式的小时,12 小时(1, 2, …, 12)
	%T 24 小时的时间形式(hh:mm:ss)
	%r 12 小时的时间形式(hh:mm:ss AM 或hh:mm:ss PM)
	%p AM或PM
	%W 一周中每一天的名称(Sunday, Monday, …, Saturday)
	%a 一周中每一天名称的缩写(Sun, Mon, …, Sat)
	%d 两位数字表示月中的天数(00, 01,…, 31)
	%e 数字形式表示月中的天数(1, 2, …, 31)
	%D 英文后缀表示月中的天数(1st, 2nd, 3rd,…)
	%w 以数字形式表示周中的天数( 0 = Sunday, 1=Monday, …, 6=Saturday)
	%j 以三位数字表示年中的天数( 001, 002, …, 366)
	%U 周(0, 1, 52),其中Sunday 为周中的第一天
	%u 周(0, 1, 52),其中Monday 为周中的第一天
	%M 月名(January, February, …, December)
	%b 缩写的月名( January, February,…., December)
	%m 两位数字表示的月份(01, 02, …, 12)
	%c 数字表示的月份(1, 2, …., 12)
    %Y 四位数字表示的年份
	%y 两位数字表示的年份
	%% 直接值“%”
除了 now() 函数能获得当前的日期时间外,MySQL 中还有下面的函数:
	current_timestamp()
	current_timestamp
	localtime()
	localtime
	localtimestamp
	localtimestamp()

函数:sysdate()
sysdate() 日期时间函数跟 now() 类似,不同之处在于:now() 在执行开始时值就得到了,
sysdate() 在函数执行时动态得到值。

获得当前日期(date)函数:curdate()
下面的两个日期函数等同于 curdate(): 
- current_date() 
- current_date


获得当前时间(time)函数:curtime()
下面的两个时间函数等同于 curtime():
•	current_time()
•	current_time


获得当前 UTC 日期时间函数:utc_date(), utc_time(), utc_timestamp()

MySQL 日期时间 Extract(选取) 函数。
选取日期时间的各个部分:日期、时间、年、季度、月、日、小时、分钟、秒、微秒

MySQL dayof… 函数:dayofweek(), dayofmonth(), dayofyear()
分别返回日期参数,在一周、一月、一年中的位置。

MySQL week… 函数:week(), weekofyear(), dayofweek(), weekday(), yearweek()

MySQL 返回星期和月份名称函数:dayname(), monthname()

MySQL last_day() 函数:返回月份中的最后一天。

MySQL 为日期增加一个时间间隔:date_add()

MySQL 为日期减去一个时间间隔:date_sub()

MySQL 另类日期函数:period_add(P,N), period_diff(P1,P2)
函数参数“P” 的格式为“YYYYMM” 或者 “YYMM”,第二个参数“N” 表示增加或减去 N month(月)。
MySQL period_add(P,N):日期加/减去N月。

MySQL 日期、时间相减函数:datediff(date1,date2), timediff(time1,time2)

MySQL (时间、秒)转换函数:time_to_sec(time), sec_to_time(seconds)

MySQL (日期、天数)转换函数:to_days(date), from_days(days)

MySQL Str to Date (字符串转换为日期)函数:str_to_date(str, format)

MySQL Date/Time to Str(日期/时间转换为字符串)函数:date_format(date,format), time_format(time,format)

MySQL 获得国家地区时间格式函数:get_format()

你可能感兴趣的:(MYSQL,mysql,数据库,database)