1、函數
函數的可移植性不是很強,不同的DBMS有不同的函數
2、文本處理函數
函數 | 說明 |
Left() | 返回串左邊的字符 |
Length() | 返回串的長度 |
Locate() | 找出串的一個子串 |
Lower() | 將串轉換爲小寫 |
LTrim() | 去掉串左邊的空格 |
Right() | 去掉串右邊的空格 |
RTrim() | 去掉右邊的空格 |
Soundex() | 返回串的SOUNDEX值 |
SubString() | 返回子串的字符 |
Upper() | 將串轉換爲大寫 |
考慮類似發音和類似字節,使串進行發音比較而不是字母比較
SELECT * FROM `user`
Where SOUNDEX(`name`)= SOUNDEX('Lee');
返回值
Lie
Lee
3、日期處理函數
(1)說明
函數 | 說明 |
---|---|
AddDate() | 增加一個日期(天、周等) |
AddTime() | 增加一個時間(時、分等) |
CurDate() | 返回當前日期 |
CurTime() | 返回當前時間 |
Date() | 返回日期時間的日期部分 |
Datediff(expr1,expr2) | 計算兩個日期之差 |
Date_Add() | 高度靈活的日期運算函數 |
Date_Format() | 返回一個格式化的日期或時間串 |
Day() | 返回一個日期的天數部分 |
DayofWeek() | 對於一個日期返回對應的星期幾 |
Hour() | 返回一個日期的小時部分 |
Minute() | 返回一個日期的分鐘部分 |
Month() | 返回一個日期的月份部分 |
Now() | 返回當前日期和時間 |
Second() | 返回一個日期的秒部分 |
Time() | 返回一個日期時間的時間部分 |
Year() | 返回一個日期的年份部分 |
(2)查某一天的數據
Select order_id FROM orders
Where Date(order_date)='2014-04-01'
或者
SELECT order_id FROM orders
Where order_date BETWEEN'2014-01-01 00:00:000' AND '2014-01-01 23:59:59.000'
返回2014-04-01日的訂單,注意錯誤的寫法如下,錯誤原因是一般數據庫中的日期都有時分秒,不可能完全等於一個日期
SELECT order_id FROM orders
Where order_date='2014-04-01'
(3)查某個月數據
SELECT order_id FROM orders
Where Date(order_date) BETWEEN
'2014-01-01' AND '2014-01-31'
或者
SELECT order_id FROM orders
Where Year(order_date)='2014'
AND Month(order_date)='01'
4、數值處理函數
函數 | 說明 |
---|---|
Abs() | 返回一個數的絕對值 |
Cos() | 返回一個角度的餘弦 |
Exp() | 返回一個數的指數值 |
Mod() | 返回除操作的餘數 |
Pi() | 返回圓周率 |
Rand() | 返回一個隨機數 |
Sin() | 返回一個角度的正弦 |
Sqrt() | 返回一個數的平方根 |
Tan() | 返回一個角度的正切 |