1日期函數
mysql> select current_date() from dual;
mysql> select current_time() from dual;
mysql> select month(current_date()) from dual;
mysql> select year(current_date()) from dual;
mysql> select month(current_date()) from dual;
mysql> select day(current_date()) from dual;
mysql> select hour(current_time()) from dual;
mysql> select minute(current_time()) from dual;
mysql> select second(current_time()) from dual;
?
create table message (
id int,
title varchar(64),
publishdate datetime
);
mysql> insert into message (id,title,publishdate)values(1,'abc',now());
Query OK, 1 row affected (0.09 sec)
?
mysql> insert into message (id,title,publishdate)values(1,'efc','2011-1-1');
Query OK, 1 row affected (0.09 sec)
備注:插入時間的內容可以是字符串,但是必須是日期格式
?
查詢最近兩個小時的內容
select * from message where date_add(publishdate,interval 2 hour)>= now();
?
選擇了最近的 30天內所有帶有date_col 值的記錄:?
mysql> SELECT something FROM tbl_name
? ? -> WHERE DATE_SUB(CURDATE(),INTERVAL 30 DAY) <= date_col;
?
函數調用格式
DATE_ADD(date, INTERVAL expr type )?
DATE_SUB(date, INTERVAL expr type )?
?
type 值 |
預期的 expr 格式 |
MICROSECOND |
MICROSECONDS |
SECOND |
SECONDS |
MINUTE |
MINUTES |
HOUR |
HOURS |
DAY |
DAYS |
WEEK |
WEEKS |
MONTH |
MONTHS |
QUARTER |
QUARTERS |
YEAR |
YEARS |
?
2字符串函數
?
?
mysql> select * from employee;
+------+------+------+------------+--------+------------+------------+
| id ? | name | sex ?| birthday ? | salary | entry_date | resume ? ? |
+------+------+------+------------+--------+------------+------------+
| ? ?1 | aaa ?| ? ? ?| 1977-11-11 | ? 56.8 | 2014-11-10 | hello word |
| ? ?2 | bbb ?| ? ? ?| 1977-11-11 | ? 57.8 | 2014-11-10 | hello word |
| ? ?3 | ccc ?| ? ? ?| 1977-11-11 | ? 56.3 | 2014-11-10 | hello word |
+------+------+------+------------+--------+------------+------------+
1rows in set (0.00 sec)
?
名字首字母大寫
select SUBSTRING(UCASE(name),1,1) from employee;
select SUBSTRING(LCASE(name),2,LENGTH(name)-1) from employee;
select CONCAT(SUBSTRING(UCASE(name),1,1), SUBSTRING(LCASE(name),2,LENGTH(name)-1)) from employee;
?
備注:SUBSTRING從第一個數從0開始
?
3數學函數
?
4加密函數
4.1md5加密
?
mysql> select md5('huangbiao') from dual;
+----------------------------------+
| md5('huangbiao') ? ? ? ? ? ? ? ? |
+----------------------------------+
| 1d7877a910293815774015e3776afa0c |
+----------------------------------+
1 row in set (0.00 sec)
?
mysql> select md5('huangbiao') ;
+----------------------------------+
| md5('huangbiao') ? ? ? ? ? ? ? ? |
+----------------------------------+
| 1d7877a910293815774015e3776afa0c |
+----------------------------------+
?
4.2password(str)
從原文密碼str 計算并返回密碼字符串,當參數為 NULL 時返回 NULL。這個函數用于用戶授權表的Password列中的加密MySQL密碼存儲
?
mysql> select password('1');
+-------------------------------------------+
| password('1') ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
+-------------------------------------------+
| *E6CC90B878B948C35E92B003C792C46C58C4AF40 |
+-------------------------------------------+?
?
mysql> select password(NULL);
+----------------+
| password(NULL) |
+----------------+
| NULL ? ? ? ? ? |
+----------------+
?
4.3SHA1(str) SHA(str)?
?
mysql> SELECT SHA1('1');
+------------------------------------------+
| SHA1('1') ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?|
+------------------------------------------+
| 356a192b7913b04c54574d18c28d46e6395428ab |
+------------------------------------------+
1 row in set (0.00 sec)
?
mysql> SELECT SHA('1');
+------------------------------------------+
| SHA('1') ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
+------------------------------------------+
| 356a192b7913b04c54574d18c28d46e6395428ab |
+------------------------------------------+
1 row in set (0.00 sec)
?
?
4.4DECODE(crypt_str,pass_str) ?和 ENCODE(str,pass_str)
?
使用 pass_str 作為密碼,解密加密字符串 crypt_str, crypt_str 應該是由ENCODE()返回的字符串。?
使用pass_str 作為密碼,解密 str 。 使用DECODE()解密結果
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
