MySQL

Posted 小企鹅推雪球!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL相关的知识,希望对你有一定的参考价值。

mysql函数

DATE_ADD函数

  1. DATE_ADD() 函数向日期添加指定的时间间隔。

  2. ·DATE_ADD(date,INTERVAL expr type)

  3. date 参数是合法的日期表达式。

  4. expr 参数是您希望添加的时间间隔。

  5. type常见的值为HOUR,DAY,WEEK,MONTH,YEAR

  6. 向 “OrderDate” 添加 45 天

 SELECT OrderId,DATE_ADD(OrderDate,INTERVAL 45 DAY) AS OrderPayDate
 FROM Orders

DATE_SUB() 函数

  1. DATE_SUB() 函数从日期减去指定的时间间隔。
  2. DATE_SUB(date,INTERVAL expr type)·
  3. 和DATE_ADD函数参数一致
  4. 向 “OrderDate” 减去 5 天
SELECT OrderId,DATE_SUB(OrderDate,INTERVAL 5 DAY) AS SubtractDate
 FROM Orders

DATEDIFF() 函数

  1. DATEDIFF() 函数返回两个日期之间的天数。
  2. DATEDIFF(date1,date2)
  3. date1 和 date2 参数是合法的日期或日期/时间表达式。
  4. 只有值的日期部分参与计算。
 SELECT DATEDIFF('2008-11-30','2008-11-29') AS DiffDate
 结果是1
SELECT DATEDIFF('2008-11-29','2008-11-30') AS DiffDate
结果是-1

DATE_FORMAT() 函数

  1. DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。
  2. DATE_FORMAT(date,format)
  3. date 参数是合法的日期。format 规定日期/时间的输出格式。

format常见的值

  1. %c 表示月,数值
  2. %H 小时(00-23)
  3. %h 小时(01-12)
  4. %i 分钟,数值(00-59)
  5. %k 小时(0-23)
  6. %S 秒(00-59)

NOW() 函数

  1. NOW() 返回当前的日期和时间。

  2. SELECT NOW(),CURDATE(),CURTIME()

  3. 创建带有日期时间列(OrderDate)的 “Orders” 表:

 CREATE TABLE Orders
 (
 OrderId int NOT NULL,
 ProductName varchar(50) NOT NULL,
 OrderDate datetime NOT NULL DEFAULT NOW(),
 PRIMARY KEY (OrderId)
 )
  1. OrderDate 列规定 NOW() 作为默认值。作为结果,向表中插入行时,当前日期和时间自动插入列中。
  2. 在 “Orders” 表中插入一条记录:INSERT INTO Orders (ProductName) VALUES ('Jarlsberg Cheese')将会默认插入带有时间的数据

CURDATE() 函数

  1. CURDATE() 返回当前的日期。

  2. CURDATE()

  3. SELECT NOW(),CURDATE(),CURTIME()

创建带有日期时间列(OrderDate)的 “Orders” 表:

 CREATE TABLE Orders
 (
 OrderId int NOT NULL,
 ProductName varchar(50) NOT NULL,
 OrderDate datetime NOT NULL DEFAULT CURDATE(),
 PRIMARY KEY (OrderId)
 )
  1. OrderDate 列规定 CURDATE() 作为默认值。作为结果,当向表中插入行时,当前日期和时间自动插入列中。
  2. 在 “Orders” 表中插入一条记录:INSERT INTO Orders (ProductName) VALUES ('Jarlsberg Cheese') 会默认插入带有时间的数据

CURTIME() 函数

  1. CURTIME() 返回当前的时间。
  2. SELECT NOW(),CURDATE(),CURTIME()

DATE()函数

  1. DATE() 函数提取日期或日期/时间表达式的日期部分。
  2. DATE(date);date 参数是合法的日期表达式。
 SELECT ProductName, DATE(OrderDate) AS OrderDate
 FROM Orders
 WHERE OrderId=1

EXTRACT() 函数

  1. EXTRACT() 函数用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等。
  2. EXTRACT(unit FROM date)
  3. date是合法的日期表达式: YEAR,MONTH,DAY,WEEK,HOUR,MINUTE

字符串连接函数

  1. CONCAT(str1,str2,…)返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。
  2. 如果所有参数均为非二进制字符串,则结果为非二进制字符串。
  3. 如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。
  4. 一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast:SELECT CONCAT(CAST(int_col AS CHAR), char_col)
  5. concat函数可以连接一个或者多个字符串:select concat('11','22','33');
  6. MySQL的concat函数在连接字符串的时候,只要其中一个是NULL,那么将返回NULL
mysql> select concat('11','22',null);
+------------------------+
| concat('11','22',null) |
+------------------------+
| NULL   |
+------------------------+
1 row in set (0.00 sec)

字符串截取函数

从左开始截取字符串

  1. left(str, length) left(被截取字段,截取长度)
  2. select left(content,200) as abstract from my_content_t

从右开始截取字符串

  1. right(str, length) right(被截取字段,截取长度)
  2. select right(content,200) as abstract from my_content_t

**截取字符串 **

  1. substring(str, pos) :substring(被截取字段,从第几位开始截取)
  2. substring(str, pos, length) :substring(被截取字段,从第几位开始截取,截取长度)
select substring(content,5) as abstract from my_content_t 
select substring(content,5,200) as abstract from my_content_t 
  1. 如果位数是负数 如-5 则是从后倒数位数,到字符串结束或截取的长度)

**按关键字截取字符串 **

  1. substring_index(str,delim,count) :substring_index(被截取字段,分隔符,关键字出现的次数)
  2. select substring_index("ryxryx","r",2) as abstract from wiki_user

substr()函数

  1. 截取字符串:substr(string string,num start,num length);
  2. select substr(参数1,参数2,参数3) from 表名
  3. string为字符串;start为起始位置;length为长度。
  4. mysql中的start是从1开始的。

查出kename字段中第一次出现.之前的字符串

select kename,substr(kename,1,locate('.',kename)) as subkename from  web_dev_api where 1;

以上是关于MySQL的主要内容,如果未能解决你的问题,请参考以下文章

从mysql的片段中加载ListView

连接MySQL出现错误:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)(代码片段

使用 json rereiver php mysql 在片段中填充列表视图

关于mysql驱动版本报错解决,Cause: com.mysql.jdbc.exceptions.jdbc4Unknown system variable ‘query_cache_size(代码片段

修改MySQL密码报错“ERROR 1819 (HY000): Your password does not satisfy the current policy requirements“(代码片段

mysql查看版本的四种方法