mysql常用函数基本查询

来源:互联网 发布:美国监狱方便面 知乎 编辑:程序博客网 时间:2024/06/14 18:31


常用函数

 

a) ?    Functions可以查询各种普通函数

b) ?    Functions and Modifiers for Use withGROUP BY可以查询各种分组(聚合)函数

 

    a)字符串函数

 --  mysql在处理字符串时,字符下标从1开始。

 --      concat(s1,s2,... sn)连接s1,s2,... sn为一个字符串

 --      insert(str,x,y,instr)讲字符串str第x位置开始,y个字符长的子串替换为字符串instr(这里会删除原来的内容,相当于java stringbuilder replace)

 --      lower(str)转小写

 --      upper(str)转大写

 --      left(str,x)返回 str 左边x个字符
 --      right(str,x)返回 str 右边x个字符

 --      lpad(str,n,pad)用字符串pad对str左边填充直到总长度为n

 --      rpad(str,n,pad)用字符串pad对str右边填充直到总长度为n

 --      ltrim(str)去掉字符串左边空格

 --      rtrim(str)去掉字符串右边空格

 --      trim(str)去除str左右的空格

 --      repeat(str,x)字符串str重复x次的结果

 --      replace(str,a,b)把str中所有a替换为b

 --       substring(str,x,y)截取str的x位置起y个字符长度的字符串

 

 b) 数值函数

    

       ABS(X) 取绝对值函数

       CEILING(X), CEIL(X) 返回大于x的最小整数

       FLOOR(X)  返回小于x的最大整数

       MOD(N,M), N % M, N MOD M 取模函数

       RAND(), RAND(N) 取0-1之间的随机数函数 0 ≤ v ≤ 1.0浮点数

       TRUNCATE(X,D) 返回数字X被截断为D位小数的结果

 

 c)日期和时间函数

 

--       CURDATE() 当前日期函数

--       CURTIME() 当前时间函数

--       NOW() 当前日期和时间函数

--       WEEK(date)返回所给日期是一年中的第几周

--       YEAR(date)返回所给日期是那一年

--       HOUR(time)返回时间的小时信息

--       MINUTE(time) 返回时间的分钟信息

--       MONTHNAME(date) 返回时间的完整月份名字

--       DATE_FORMAT(date,format)根据format格式date显示形式

-- STR_TO_DATE(str,format)函数(字符串转时间)

--       DATE_ADD(date,INTERVAL expr type) 返回与所给日期date相差INTERVAL的时间段

--       DATEDIFF(expr,expr2) 计算两个日期之间相差的天数

 

  d)类型转换函数

 --  BINARY函数(字符串转换二进制字符串)(=等值比较字符串时会忽略大小写和空格,通过BINARY可以强制比较真实内容)

 --       SELECT 'a'='A'

 --       SELECT 'a'='A '

 --       SELECT BINARY 'a'= BINARY 'A '

 --   Cast函数(值转换为其他类型)    

 --      SELECT CAST('-1' AS SIGNED ); 字符串转有符号数字

 --      SELECT CAST('-1' AS UNSIGNED); 字符串转无符号数字

 --     SELECT CAST(11 AS char); 数字转字符串

       

-- STR_TO_DATE(str,format)函数(字符串转时间)

--     SELECTSTR_TO_DATE('01,5,2013','%d,%m,%Y');

--     SELECTSTR_TO_DATE('09:30:17','%h:%i:%s');

-- DATE_FORMAT(date,format)函数(时间按格式转字符串)

--    SELECT DATE_FORMAT('2009-10-0422:23:00', '%d %m %Y');

-- SEC_TO_TIME(seconds)函数(分钟数转时间time)

--   SELECTSEC_TO_TIME(2378);

-- TIME_TO_SEC(time)函数(时间time转分钟数)

--   SELECT TIME_TO_SEC(curTime());

 e)流程函数

 

        IF(b1,expr2,expr3)函数

           如果b1为真(非0,和null)则返回expr2,否则返回expr3//有点像java中三目运算

        IFNULL(expr1,expr2)函数

           若expr1为NULL则返回expr2内容

        CASE函数

1)定值比较-类似于switch结构

       CASE value 

       WHEN [compare_value] THEN result

       [WHEN [compare_value] THEN result...] 

       [ELSE result]END
2)条件判断-类似于if else if结构       CASE WHEN [condition] THEN result 

       [WHEN [condition] THEN result ...] 

       [ELSE result] END

 

 e) 其他函数

      DATABASE()函数:用于查询当前使用数据库的名字(通过 use dbname切换)

       VERSION()函数:用户查询所使用数据库的版本

       USER()函数:查询当前登陆用户名

       INET_ATON(expr)函数:查询IP地址的网络字节序表示,反函数是          INET_NTOA,如('192.168.1.1')

       INET_NTOA(expr)函数:查询网络字节序代表的IP地址,是INET_ATON的反函数

 

 

 

 


 

0 0
原创粉丝点击