MySQL function

# ASCII 返回字符串str的第一个字符的ascii值(str是空串时返回0)
# 97
SELECT ASCII('a');

# ORD 如果是一个多字节字符,以格式返回((first byte ascii code)*256+(second byte ascii code))[*256+third byte asciicode...]
SELECT ORD('a');
# 14989485
SELECT ORD('中');

# conv(n,from_base,to_base)
# 对数字n进制转换,并转换为字串返回(任何参数为null时返回null,进制范围为2-36进制,
# 当to_base是负数时n作为有符号数否则作无符号数,conv以64位点精度工作)
# 101
SELECT CONV(5, 10, 2);
# 12
SELECT CONV(1100, 2, 10);
# c
SELECT CONV(1100, 2, 16);

# bin(n)
# 把n转为二进制值并以字串返回(n是bigint数字,等价于conv(n,10,2))
SELECT BIN(12);

# 八进制值
# 14
SELECT OCT(12);
# B
SELECT HEX(11);

# char(n,...)
# 返回由参数n,...对应的ascii代码字符组成的一个字串(参数是n,...是数字序列,null值被跳过)
# MySQL
SELECT CHAR(77, 121, 83, 81, '76');

SELECT CONCAT('Hello', 'World');

# 5
SELECT LENGTH('hello');
# 6
SELECT LENGTH('你好');

# 6
SELECT OCTET_LENGTH('你好');

# 2
SELECT CHAR_LENGTH('你好');

# 2
SELECT CHARACTER_LENGTH('你好');

# locate(substr,str)
# position(substr in str)
# 返回字符串substr在字符串str第一次出现的位置(str不包含substr时返回0)
# 3
SELECT LOCATE('ll', 'hello world');

# locate(substr,str,pos)
# 10
SELECT LOCATE('l', 'hello world', 5);


SELECT PI();

SELECT RAND();

# 12.1
SELECT TRUNCATE(12.12, 1);

# 4
SELECT DAYOFWEEK(CURRENT_DATE);
# 2
SELECT DAYOFMONTH(CURRENT_DATE);
# 122
SELECT DAYOFYEAR(CURRENT_DATE);

# 2
SELECT DAY(CURRENT_DATE);
# 5
SELECT MONTH(CURRENT_DATE);
# 2018
SELECT YEAR(CURRENT_DATE);
# 2
SELECT QUARTER(CURRENT_DATE);
# Wednesday
SELECT DAYNAME(CURRENT_DATE);
# May
SELECT MONTHNAME(CURRENT_DATE);

SELECT HOUR(CURRENT_TIME);

SELECT CONCAT(YEAR(CURRENT_DATE), '-', MONTH(CURRENT_DATE), '-', DAY(CURRENT_DATE)) AS `date`;
SELECT CONCAT(HOUR(CURRENT_TIME), '-', MINUTE(CURRENT_TIME), '-', SECOND(CURRENT_TIME)) AS `time`;

SET @D = CONCAT(YEAR(CURRENT_DATE), '-', MONTH(CURRENT_DATE), '-', DAY(CURRENT_DATE));
SET @T = CONCAT(HOUR(CURRENT_TIME), ':', MINUTE(CURRENT_TIME), ':', SECOND(CURRENT_TIME));
SELECT CONCAT(@D,' ',@T) AS 'datetime';

#  %m 月名字(january……december)
#  %w 星期名字(sunday……saturday)
#  %d 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。)
#  %y 年, 数字, 4 位
#  %y 年, 数字, 2 位
#  %a 缩写的星期名字(sun……sat)
#  %d 月份中的天数, 数字(00……31)
#  %e 月份中的天数, 数字(0……31)
#  %m 月, 数字(01……12)
#  %c 月, 数字(1……12)
#  %b 缩写的月份名字(jan……dec)
#  %j 一年中的天数(001……366)
#  %h 小时(00……23)
#  %k 小时(0……23)
#  %h 小时(01……12)
#  %i 小时(01……12)
#  %l 小时(1……12)
#  %i 分钟, 数字(00……59)
#  %r 时间,12 小时(hh:mm:ss [ap]m)
#  %t 时间,24 小时(hh:mm:ss)
#  %s 秒(00……59)
#  %s 秒(00……59)
#  %p am或pm
#  %w 一个星期中的天数(0=sunday ……6=saturday )
#  %u 星期(0……52), 这里星期天是星期的第一天
#  %u 星期(0……52), 这里星期一是星期的第一天
#  %% 字符% )
SELECT DATE_FORMAT(CURRENT_DATE,'%y %m %w %d') AS 'DATE_FORMAT';
SELECT TIME_FORMAT(CURRENT_TIME,'%h %i %s') AS TIME_FORMAT;

# 2018-05-02 11:42:18
SELECT NOW();
SELECT SYSDATE();
SELECT CURRENT_TIMESTAMP;
# 20180502114421
SELECT  NOW() + 0;

# 1525261486
SELECT UNIX_TIMESTAMP();

# root@localhost
SELECT CURRENT_USER;

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325210648&siteId=291194637