日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql常用函数 [转]

發(fā)布時(shí)間:2024/9/5 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql常用函数 [转] 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

算數(shù)運(yùn)算子
+, -, *, /
除于 0 會(huì)等于 NULL
比較運(yùn)算子
任何東西跟 NULL 比較會(huì)等于 NULL
比較字符串通常不需要注意大小寫,如果要比較大小寫,用 BINARY 關(guān)鍵詞。

程序代碼:

SELECT *
FROM department
WHERE name = BINARY 'marketing';

程序代碼:

=????? 相等
!=
<>??? 不相等
<?????
小于
<=????
小或等于
>?????
大于
>=????
大或等于
n BETWEEN
min AND max???
測試范圍
n IN (set)??? set
可以是一系列的數(shù)值或子查詢。
<=>???
可以比較 NULL,如果比較兩個(gè) NULL 會(huì)傳回 1
n IS NULL???
測試 n 是否 NULL
ISNULL(n)???
測試 n 是否 NULL

邏輯運(yùn)算子
傳回的值有 1 (true), 0 (false, NULL
任何不是 0 或不是 NULL 的值都是 true

程序代碼:

AND &&?n && m?? ???
?????????? ??? true && true = true
?????????? ??? false && anything = false
?????????? ???
其它會(huì)等于 NULL
OR
||?? n || m?? ???
?????????? ??? true || anything = true
?????????? ??? NULL || false = NULL
?????????? ??? NULL || NULL = NULL
?????????? ??? false || false = false
NOT
!??? NOT n???? 不是
?????????? ??? !true = false
?????????? ??? !false = true
?????????? ??? !NULL = NULL
XOR??? n XOR m?????
不包含的 OR
?????????? ??? true XOR true = false
?????????? ??? true XOR false = true
?????????? ??? false XOR true = true
?????????? ??? NULL XOR n = NULL
?????????? ??? n XOR NULL = NULL


控制流向的函式
IF (e1, e2, e3)
如果 e1 trueIF 會(huì)傳回 e2,不然會(huì)傳回 e3
CASE value
WHEN [compare-value] THEN result
[WHEN [compare-value] THEN result ...]
[ELSE result]
END
或是
CASE
WHEN [condition] THEN result
[WHEN [condition] THEN result ...]
[ELSE result]
END

程序代碼:

SELECT workdate, CASE
??? WHEN workdate < 2000-01-01 THEN "archived"
??? WHEN workdate < 2003-01-01 THEN "old"
??? ELSE "current"
??? END
FROM assignment;


字符串函式
concat(s1, s2, ...) -
連接字符串 s1 s2...
conv(n, original_base, new_base) -
轉(zhuǎn)換數(shù)字 n 從本來的 base 到新的 base
length(s) -
找字符串的長度
load_file(filename) -
依照字符串傳回檔案的內(nèi)容
locate(needle, haystack, position) -
傳回 needle 字符串的開始位置,在 haystack 字符串里,從 position 開始
lower(s) and upper(s) -
轉(zhuǎn)換 s 到小寫或大寫
quote(s) -
跳脫 s 字符串,讓它可以安全輸入數(shù)據(jù)庫
replace(target, find, replace) -
傳回 target 字符串,將 find 字符串覆蓋成 replace 字符串
soundex(s) -
傳回跟 s 類似的 soundex 字符串。soundex 是字符串的發(fā)音
substring(s, position, length) -
傳回字符串里的字符串,s 是本來的字符串,position 是開始的位置,length 是傳回的字?jǐn)?shù)
trim(s) -
移除開頭跟字尾的空格符。也可以用 rtrim() ltrim()
字符串比較的函式
LIKE -
利用通配字符來進(jìn)行比較
RLIKE -
利用正規(guī)表示法來進(jìn)行比較
STRCMP -
比較字符串,類似 C 里面的 strcmp()
MATCH -
進(jìn)行 full-text 比較

利用通配字符來進(jìn)行比較

程序代碼:

SELECT *
FROM department
WHERE name LIKE '%research%';

% 會(huì)吻合任何字?jǐn)?shù),包括 0
_
會(huì)吻合單一字?jǐn)?shù), _at 會(huì)吻合 cat, mat, bat...

利用正規(guī)表示法來進(jìn)行比較
RLIKE
可以用來吻合正規(guī)表示法。
'cat'
會(huì)吻合 'catacomb' 'the cat sat on the mat'
如果只要吻合 'cat',用 '^cat$'
^
表示在吻合的字符串開頭是 'cat'
$
表示在吻合的字符串最后是 'cat'
.
可以用來代表通配字符,'.at' 會(huì)吻合 'cat', 'bat', 'mat'
*
表示字符可以出現(xiàn)零或多次,'n*' 會(huì)吻合 '', 'nn', 'nnn'
()
會(huì)歸類字符,'(cat)*' 會(huì)吻合 '', 'cat', 'catcat', 'catcatcat'
.*
會(huì)吻合任何字或字符串。
+
表示在他之后的字或字符串會(huì)重復(fù)一或多次。
?
表示吻合一或零次。
列出特定的范圍,'(cat)(2,4)' 會(huì)吻合 'catcat', 'catcatcat', 'catcatcatcat'
[]
可以列出一系列的文字,'[a-z]' 會(huì)吻合任何字母,'[a-z]*' 會(huì)吻合任何數(shù)量的字母。
文字類別,[[:alnum:]] 會(huì)吻合任何字母和數(shù)字的文字。

程序代碼:

SELECT *
FROM department
WHERE name RLIKE 'an';

這會(huì)吻合全部有包括 'an' 的部門。

STRCMP() 來比較字符串
STRCMP(s1, s2)
如果字符串相同會(huì)傳回 0-1 如果 s1 s2 (s1 s2 早出現(xiàn))
1
如果 s1 s2 (s1 s2 晚出現(xiàn))

程序代碼:

SELECT STRCMP('cat', 'cat');
//
傳回 0
SELECT STRCMP('cat', 'dog');
//
傳回 -1
SELECT STRCMP('cat', 'ant');
//
傳回 1


數(shù)字函式

abs(n)

傳回 n 的正數(shù)

ceiling(n)

n rounded up to the nearest integer

floor(n)

n rounded down to the nearest integer

mod(n,m) div

這兩個(gè)函式會(huì)將 n 除于 mdiv 傳回商數(shù),mod() 會(huì)傳回剩余數(shù)。

power(n,m)

n to the power of m

rand(n)

傳回 0 1 的隨意數(shù)。n 可以不提供,如果提供會(huì)用來產(chǎn)生隨意數(shù)。
相同的 n 會(huì)產(chǎn)生相同的隨意數(shù)。

round(n[,d])

n rounded to the nearest integer. if supply d, n will be rounded to d decimal places.

sqrt(n)

傳回 n 的平方

mod() 可以是 mod(9,2) 9 mod 2 9 % 2
div
只能用 9 div 2

程序代碼:

SELECT 9 mod 2;
//
傳回 1
SELECT 9 div 2;
//
傳回 4


日期和時(shí)間函式
adddate(date, INTERVAL n type)
subdate(date, INTERVAL n type)
這些函式可以用來增加和減少日期。從 date 的日期開始計(jì)算,然后增加或減少 INTERVAL 后的日期范圍。
你必須提供 n 和他的類型。類型可以是 SECOND, MINUTE, HOUR, DAY, MONTH, YEAR, MINUTE:SECOND (m:s),
HOUR:MINUTE (h:m), DAY_HOUR(d h), YEAR_MONTH (y-m), HOUR_SECOND (h:m:s), DAY_MINUTE (d h:m),
DAY_SECOND (d h:m:s)

curdate(), curtime(), now()
這些函式會(huì)傳回目前的日期,目前的時(shí)間,還有時(shí)間和日期。
date_format(date, format)
time_format(time, format)
這些可以用來改變?nèi)掌诤蜁r(shí)間的格式。
你必須提供格式的字符串,譬如說 date_format(workdate, '%W %D of %M, %Y')
這會(huì)給你 'Monday 16th of June, 2003)
全部可用的格式請看 MySQL 的手冊。
dayname(date)
傳回日期的名稱,例如 Monday
extract(type FROM date)
傳回 date 的日期,譬如說 YEAR,他就會(huì)傳回那個(gè)日期的年數(shù)。
函式可用的類型跟 adddate() subdate() 的類型相同。
unix_timestamp([date])
傳回目前的 Unix 時(shí)間。如果跟 date 一起使用,傳回的日期會(huì)從 date 的日期開始計(jì)算。
范例:

程序代碼:

SELECT adddate("1999-01-01", INTERVAL "1-6" YEAR_MONTH);
//
傳回 2000-07-01
SELECT unix_timestamp(adddate("1999-01-01", INTERVAL "1-6" YEAR_MONTH);
//
傳回 962373600

可以用 PHP date() 函式來將 Unix 的時(shí)間格式化。

cast
函式
cast
可以用來改變類型,用 cast() convert() 函式。
兩個(gè)函式相同,但是不同的語法構(gòu)造。
cast(expression AS type)
convert(expression, type)
cast()
是依照 ANSI 的規(guī)格,convert() 是依照 ODBC 的規(guī)格。
類型可以是 BINARY, CHAR, DATE, DATETIME, SIGNED (INTEGER), UNSIGNED (INTEGER)
通常 MySQL 會(huì)自動(dòng)幫你改變類型。

其它函式
benchmark(count, expression)
這個(gè)函式是用來測試查詢的速度,只會(huì)傳回 0 值。
encrypt(s[,salt])
s 加密用 Unix 的加密系統(tǒng)。salt 字符串是兩個(gè)字符的字符串,可以不用。
如果沒有 crypt 功能,像在 Windows 系統(tǒng),這個(gè)函式會(huì)傳回 NULL
found_rows()
傳回字段的數(shù)量,如果沒有用 LIMIT
只有在 SELECT 里使用 SQL_CALC_FOUND_ROWS 才能用這個(gè)函式。
last_insert_id()
傳回最后產(chǎn)生的 AUTO_INCREMENT 值。
md5(s)
傳回 128bit MD5 的加密字符串。
password(s)
計(jì)算 s 的密碼,不建議用這個(gè)函式來儲(chǔ)存密碼。

用于 GROUP BY 的函式
這些還是專門為了 GROUP BY 而寫的。
avg(column) -
傳回字段的平均值
count(column) -
傳回字段的數(shù)量
min(column) -
傳回字段的最小值
max(column) -
傳回字段的最大值
std(column) -
傳回字段的標(biāo)準(zhǔn)差
sum(column) -
傳回字段的總數(shù)

轉(zhuǎn)載于:https://www.cnblogs.com/tuyile006/archive/2008/08/21/1273340.html

總結(jié)

以上是生活随笔為你收集整理的mysql常用函数 [转]的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。