mysql系统函数 以及常用字段类型

来源:互联网 发布:华为云计算哪个部门好 编辑:程序博客网 时间:2024/05/29 04:47
mysql系统函数
     数学函数
abs(x)         返回X的绝对值
ceil(x)           返回大于或者等于X的最小整数
floor(x)          返回小于或者等于X的最大函数
rand(x)           返回0-1之间的随机数
sign(X)        返回x的符号 X是负数 0 正数分别返回-1 0


    字符串函数
char_length(x)     返回字符串s的长度
length(s)        返回字符串s的长度
concat(s1,s2,s3)   将多个字符串合并成为一个字符串
concat_ws(s,s2,s3) 也是将多个字符串合并成为一个字符串   但是在每个字符串之间加上一个s
upper(s),ucase(s)  将字符串s的所有字母都变成大写
lower(s),lcase(s)  将字符串s的多有字母都变成小写
left(s,n)        返回字符串s的前n个字符
right(s,n)         返回字符串s的后n个字符
lpad(s1,len,s2)    字符串s2来填充s1的开始之处,是字符串的长度达到len
rpad(s1,len,s2)    字符串s2来天从s1的结束之处,使字符串长度达到len
trim(s)            去掉字符串s开始处和结尾处的空格
trim(s1 from s)  去掉字符串s中开始位置和结束位置的字符串s1

repeat(s,s1,s2)    用字符串S2代替字符串s中的字符串s1  

 repeat('abc',4)    返回由count个字符串str连成的一个字符串(任何参数为null时)

strcmp(s1,s2)      比较字符串s1,s2
substring(s,n,len) 获取从字符串s中的第n个位置开始长度为len的字符串


    日期和时间函数
curdate(),current_date()   返回当前日期
curtime(),current_time()   返回当前时间
now(),current_timestamp    返回当前日期和时间
localtime(),sysdate();
unix_timestamp();          返回当前时间的时间戳
unix_timestamp(d);         把unix时间戳的时间转换成普通格式的时间
month(d)                   返回日期d中的月份值   范围是1-12
monthname(d)               返回日期d的月份名称     如january
dayname()                  返回日期d是星期几       如monday
dayofweek(d)               返回日期d是星期几  1 表示星期日   2 表示星期2
weekday(d)                 返回日期(d)是星期几,0是星期一  1是星期二
weekofyear(d)              返回日期d是本年的第几个星期,范围是0-53
dayofyear(d)               返回日期d是本月的第几天
year(d)                    返回日期d的中的年份值
hour(d)                    返回时间d的小时值
extract(type from d)       从日期中获取指定的值  type返回的是值  如year  hour
time_to_sec(t)             将时间转化成秒
date_format(d,f)           按照表达式的要求显示日期d
time_format(t,f)           按照表达式的要求显示时间t

get_format(type,s)         按照字符串s获取type类型数据的显示格式


date_format(date,format)   
 根据format字符串格式化date值 
 (在format字符串中可用标志符: 
 %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), 这里星期一是星期的第一天   
 %% 字符% ) 


    条件判断函数
    
if(expr,v1,v2)函数      如果表示是expr成立   返回结果v1  否则返回结果v2
case when expr1 then v1 when expr2 then v2 end
set  @a=2
case when @a=2 then 'ok' when @a=3 then 'on' end;



          MySQL字段类型
    tinyint    有符号的范围是-128到127   无符号的范围是0-255
    smallint    有符号的是-32768到32767  无符号的范围是0-65535
    mediumint
    int   一个正常大小的整数    10  一般是10位数
    float  浮点数  不能无符号
    double
    decimal  有两个参数  第一个参数是浮点数的长度   第二个参数是表示这个浮点数保留几位小数
    date  保存的是一个日期   支持的范围是1000-01-01'到'9999-12-31
    datetime  一个日期和时间的组合  至此的范围是1000-01-01 00:00:00'到'9999-12-31 23:59:59
    timestamp 一个时间戳
    time      一个时间 范围是'-838:59:59'到'838:59:59'。
    char      一个定长的字符串  范围是1-255
    varchar   一个变长的字符串
0 0