函數使用說明: BENCHMARK() 函數重複 count 次執行表達式 expr 。 它可以被用於計算 MySQL 處理表達式的速度。結果值通常為 0 。另一種用處來自 mysql 客戶端內部 , 能夠報告問詢執行的次數
b)函數 CHARSET(str )
函數使用說明:返回字符串自變量的字符集。
c)函數 COERCIBILITY(str )
函數使用說明:返回字符串自變量的整序可壓縮性值。
d)函數 COLLATION(str )
函數使用說明:返回惠字符串參數的排序方式。
e) 函數 CONNECTION_ID()
函數使用說明:返回對於連接的連接 ID ( 線程 ID) 。每個連接都有各自的唯一 ID 。
f) 函數 CURRENT_USER, CURRENT_USER()
函數使用說明:返回當前話路被驗證的用戶名和主機名組合。這個值符合確定你的存取權限的 MySQL 賬戶。在被指定 SQL SECURITY DEFINER 特征的存儲程序內, CURRENT_USER() 返回程序的創建者
g)函數 DATABASE()
函數使用說明:返回使用 utf8 字符集的默認 ( 當前 ) 數據庫名。在存儲程序裏,默認數據庫是同該程序向關聯的數據庫,但並不一定與調用語境的默認數據庫相同。
h)函數 FOUND_ROWS()
函數使用說明: A SELECT 語句可能包括一個 LIMIT 子句,用來限制服務器返回客戶端的行數。在有些情況下,需要不用再次運行該語句而得知在沒有 LIMIT 時到底該語句返回了多少行。為了知道這個行數 , 包括在 SELECT 語句中選擇 SQL_CALC_FOUND_ROWS ,隨後調用 FOUND_ROWS()
i)函數 LAST_INSERT_ID() LAST_INSERT_ID(expr )
函數使用說明:自動返回最後一個 INSERT 或 UPDATE 問詢為 AUTO_INCREMENT 列設置的第一個 發生的值。
j)函數 ROW_COUNT()
函數使用說明: ROW_COUNT() 返回被前面語句升級的、插入的或刪除的行數。 這個行數和 mysql 客戶端顯示的行數及 mysql_affected_rows() C API 函數返回的值相同。
k)函數 SCHEMA()
函數使用說明:這個函數和 DATABASE() 具有相同的意義
l)函數 SESSION_USER()
函數使用說明: SESSION_USER() 和 USER() 具有相同的意義。
m)函數 SYSTEM_USER()
函數使用說明: SYSTEM_USER() 合 USER() 具有相同的意義
n)函數 USER()
函數使用說明:返回當前 MySQL 用戶名和機主名
o)函數 VERSION()
函數使用說明:返回指示 MySQL 服務器版本的字符串。這個字符串使用 utf8 字符集。
八、 其他函數
a) 函數 DEFAULT(col_name )
函數使用說明:返回一個表列的默認值。若該列沒有默認值則會產生錯誤。
b)函數 FORMAT(X ,D )
函數使用說明:將數字 X 的格式寫為 '#,###,###.##', 以四舍五入的方式保留小數點後 D 位, 並將結果以字符串的形式返回。若 D 為 0, 則返回結果不帶有小數點,或不含小數部分。
c)函數 GET_LOCK(str ,timeout )
函數使用說明:設法使用字符串 str 給定的名字得到一個鎖, 超時為 timeout 秒。若成功得到鎖,則返回 1 ,若操作超時則返回 0 ( 例如 , 由於另一個客戶端已提前封鎖了這個名字 ), 若發生錯誤則返回 NULL ( 諸如缺乏記憶或線程 mysqladmin kill 被斷開 ) 。假如你有一個用 GET_LOCK() 得到的鎖,當你執行 RELEASE_LOCK() 或你的連接斷開 ( 正常或非正常 ) 時,這個鎖就會解除
d)函數 INET_ATON(expr )
函數使用說明:給出一個作為字符串的網絡地址的點地址表示,返回一個代表該地址數值的整數。地址可以是 4 或 8 比特地址。
e) 函數 INET_NTOA(expr )
函數使用說明:給定一個數字網絡地址 (4 或 8 比特 ), 返回作為字符串的該地址的電地址表示
f) 函數 IS_FREE_LOCK(str )
函數使用說明:檢查名為 str 的鎖是否可以使用 ( 換言之 , 沒有被封鎖 ) 。若鎖可以使用,則返回 1 ( 沒有人在用這個鎖 ), 若這個鎖正在被使用,則返回 0 ,出現錯誤則返回 NULL ( 諸如不正確的參數 ) 。
g)函數 IS_USED_LOCK(str )
函數使用說明:檢查名為 str 的鎖是否正在被使用 ( 換言之 , 被封鎖 ) 。若被封鎖,則返回使用該鎖的客戶端的連接標識符。否則返回 NULL 。
h)函數 MASTER_POS_WAIT(log_name ,log_pos [,timeout ])
函數使用說明:該函數對於控制主從同步很有用處。它會持續封鎖,直到從設備閱讀和應用主機記錄中所有補充資料到指定的位置。返回值是其為到達指定位置而必須等待的記錄事件的數目。若從設備 SQL 線程沒有被啟動、從設備主機信息尚未初始化、參數不正確或出現任何錯誤,則該函數返回 NULL 。若超時時間被超過,則返回 -1 。若在 MASTER_POS_WAIT() 等待期間,從設備 SQL 線程中止,則該函數返回 NULL 。若從設備由指定位置通過,則函數會立即返回結果。
i)函數 NAME_CONST(name ,value )
函數使用說明:返回給定值。 當用來產生一個結果集合列時 , NAME_CONST() 促使該列使用給定名稱。
j)函數 RELEASE_LOCK(str )
函數使用說明:解開被 GET_LOCK() 獲取的,用字符串 str 所命名的鎖。若鎖被解開,則返回 1 ,若改線程尚未創建鎖,則返回 0 ( 此時鎖沒有被解開 ), 若命名的鎖不存在,則返回 NULL 。若該鎖從未被對 GET_LOCK() 的調用獲取,或鎖已經被提前解開,則該鎖不存在。
k)函數 SLEEP(duration )
函數使用說明:睡眠 ( 暫停 ) 時間為 duration 參數給定的秒數,然後返回 0 。若 SLEEP() 被中斷 , 它會返回 1 。 duration 或許或包括一個給定的以微秒為單位的分數部分。
l)函數 UUID()
函數使用說明:返回一個通用唯一標識符 (UUID) , UUID 被設計成一個在時間和空間上都獨一無二的數字。 2 個對 UUID() 的調用應產生 2 個不同的值,即使這些調用的執行是在兩個互不相連的單獨電腦上進行。
m)函數 VALUES(col_name )
函數使用說明:在一個 INSERT … ON DUPLICATE KEY UPDATE … 語句中,你可以在 UPDATE 子句中使用 VALUES(col_name ) 函數,用來訪問來自該語句的 INSERT 部分的列值。換言之, UPDATE 子句中的 VALUES(col_name ) 訪問需要被插入的 col_name 的值 , 並不會發生重複鍵沖突。這個函數在多行插入中特別有用。 VALUES() 函數只在 INSERT ... UPDATE 語句中有意義,而在其它情況下只會返回 NULL
- This is a reposted article.
- Keywords : 函數, 函數使用, 則返回, col_name, UPDATE, 返回, 行數, 意義, VALUES, MySQL, INSERT, GET_LOCK, 返回一, 語句中, 解開, 線程, 相同, 換言, 封鎖, 字符集