1、系统信息函数
系统信息函数用来查询MySQL数据库的系统信息。
函数代码:
SELECT VERSION()
->5067-community-nt
CONNECTION_ID() 返回服务器的连接数
DATABASE()、SCHEMA 返回当前数据库名
USER()、SYSTEM_USER()返回当前用户
2、日期时间函数
MySQL的日期和时间函数主要用于处理日期时间。
函数代码:
CURDATE(),CURRENT_DATE() curdate() 返回当前日期
SELECT CURDATE()
->2014-12-17
CURTIME(),CURRENT_TIME curtime()
返回当前时间
SELECT CURTIME()
->15:59:02
3、字符串函数
函数代码:
CHAR_LENGTH(s) char_length()返回字符串s的字符数
SELECT CHAR_LENGTH('你好123') -- 5
CONCAT(s1,s2,) concat(s1,s2)
将字符串s1,s2等多个字符串合并为一个字符串
4、加密函数
加密函数是MySQL用来对数据进行加密的函数。
函数代码:
PASSWORD(str)
该函数可以对字符串str进行加密,一般情况下,PASSWORD(str)用于给用户的密码加密。
SELECT PASSWORD('123')
->23AE809DDACAF96AF0FD78ED04B6A265E05AA257
5、数学函数
数学函数主要用于处理数字,包括整型、浮点数等。
函数代码:
ABS(x) abs(x)返回x的绝对值
SELECT ABS(-1) -- 返回1
CEIL(x),CEILING(x) cell(x),celling(x)
返回大于或等于x的最小整数
SELECT CEIL(15) -- 返回2
取得当前时间用 now() 就行。
在数据库中格式化时间 用DATE_FORMA T(date, format)
根据格式串format 格式化日期或日期和时间值date,返回结果串。
可用DATE_FORMAT( ) 来格式化DATE 或DATETIME 值,以便得到所希望的格式。根据format字符串格式化date值:
%S, %s 两位数字形式的秒( 00,01, , 59)
%i 两位数字形式的分( 00,01, , 59)
%H 两位数字形式的小时,24 小时(00,01, , 23)
%h, %I 两位数字形式的小时,12 小时(01,02, , 12)
%k 数字形式的小时,24 小时(0,1, , 23)
%l 数字形式的小时,12 小时(1, 2, , 12)
%T 24 小时的时间形式(h h : m m : s s)
%r 12 小时的时间形式(hh:mm:ss AM 或hh:mm:ss PM)
%p AM 或P M
%W 一周中每一天的名称( S u n d a y, Monday, , Saturday)
%a 一周中每一天名称的缩写( Sun, Mon, , Sat)
%d 两位数字表示月中的天数( 00, 01, , 31)
%e 数字形式表示月中的天数( 1, 2, , 31)
%D 英文后缀表示月中的天数( 1st, 2nd, 3rd, )
%w 以数字形式表示周中的天数( 0 = S u n d a y, 1=Monday, , 6=Saturday)
%j 以三位数字表示年中的天数( 001, 002, , 366)
% U 周(0, 1, 52),其中Sunday 为周中的第一天
%u 周(0, 1, 52),其中Monday 为周中的第一天
%M 月名(J a n u a r y, February, , December)
%b 缩写的月名( J a n u a r y, February, , December)
%m 两位数字表示的月份( 01, 02, , 12)
%c 数字表示的月份( 1, 2, , 12)
%Y 四位数字表示的年份
%y 两位数字表示的年份
%% 直接值“%”
select date_format(日期字段,’%Y-%m-%d’) as ‘日期’ from test
一、ANSI字符函数
字符函数用于在SQL里以不同于存储方式的格式来表示字符串。
串接就是把两个单独的字符串组合为一个。
子串的概念就是从字符串里提取一部分。
TRANSLATE函数用于逐字符地把一个字符串变换为另一个,它通常有3个参数:要被转换的字符串、要转换的字符系列、代入字符的列表。
二、常用字符函数
1、串接函数
MySQL里的语法:CONCAT(column_name, [‘ ’,] column_name [column_name])
ORACLE里的语法:column_name || [‘ ’ ||] column_name [column_name]
SQL Server里的语法:column_name + [‘ ’ +] column_name [column_name]
MySQL和Oracle中都有串接函数,区别在于,Oracle中的串接函数只能用于两个字符串,而MySQL中的串接函数可以连接多个字符串。
2、TRANSLATE函数
TRANSLATE函数搜索字符串里的字符并查找特定的字符,标记找到的位置,然后用替代字符串里对应的字符替换它。
语法:TRANSLATE(CHARACTER set, value1, value2)
注:MySQL和Oracle都支持使用TRANSLATE函数,但是SQL Server不支持。
3、REPLACE函数
REPLACE函数用于把某个字符或字符串替换为指定的一个字符(或多个字符),其使用类似于TRANSLATE函数,只是它是把一个字符或字符串替换到另一个字符串里。
语法:REPLACE(‘value’,’value’,[null] ‘value’)
注:MySQL、Oracle、SQL Server全都支持该函数的ANSI语法结构。
4、UPPER
语法:UPPER(CHARACTER string)
注:MySQL、Oracle、SQL Server全都支持该函数,MySQL还有一个UCASE函数可以实现同样的 *** 作。
5、LOWER
语法:LOWER(CHARACTER string)
注:MySQL、Oracle、SQL Server全都支持该函数,与UPPER类似,MySQL还有一个LCASE函数可以实现同样的 *** 作。
6、SUBSTR
MySQL(5533)里的语法:
SUBSTR(column_name starting position, length)
SUBSTRING(column_name, starting position, length)
Oracle里的语法:SUBSTR(column_name starting position, length)
SQL Server里的语法:SUBSTRING(column_name, starting position, length)
7、INSTR
INSTR函数用于在字符串里寻找指定的字符集,返回其所在的位置。
语法:INSTR(column_name, ‘set’, [start position [,occurrence]]
注:INSTR在MySQL和Oracle中有效,在SQL Server中,则需要使用CHARINDEX函数。
8、LTRIM
LTRIM用于从左剪除字符串里的字符。
语法:LTRIM(CHARACTER STRING [,’set’)
注:MySQL、Oracle、SQL Sserver全都支持该函数。
9、RTRIM
类似于LTRIM,RTRIM也用于剪除字符,当它是剪除字符串的右侧。
语法:RTRIM(CHARACTER STRING [,’set’])
注:MySQL、Oracle、SQL Sserver全都支持该函数。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)