《MySQL常用函數學習》要點:
本文介紹了MySQL常用函數學習,希望對您有用。如果有疑問,可以聯系我們。
前言
MySQL函數是MySQL數據庫提供的內置函數,這些內置函數可以更方便處理表中的數據.下面簡單介紹一下MySQL中包括的幾類常用函數.
聚合函數
聚合函數可實現根據一組數據求出一個值,聚合函數的成果值只根據選定數據行中非NULL值進行計算,NULL值被忽略.
COUNT()函數
COUNT()函數,對于除“*”以外的任何參數,返回所選擇集合中非NULL值的行的數目;對于參數“*”,則返回所選擇集合中所有行的數目,包括NULL值的行.沒有WHERE子句的COUNT(*)是經過內部優化的,能夠快速地返回表中所有的記錄總數.
SUM()函數
SUM()函數可以求出表中某個字段取值的總和.
AVG函數
AVG()函數可以求出表中某個字段取值的平均值.
MAX()函數
MAX()函數可以求出表中某個字段值的最大值.
MIN()函數
MIN()函數可以求出表中某個字段值的最小值.
大家都是從學生時代過來的,下面使用學生信息表和成就表來演示上面的SQL函數.
#統計學生表記錄
SELECT COUNT(*) FROM tb_student;
#求學生分數總和
SELECT SUM(score) FROM tb_score;
#求學生的平均分
SELECT AVG(score) FROM tb_score;
#求成就的最高分
SELECT MAX(score) FROM tb_score;
#求成就的最低分
SELECT MIN(score) FROM tb_score;
數學函數
數學函數主要用于處理數字,包含整型和浮點數.下面介紹一下常用的幾個數學函數.
ABS()函數
ABS()可以求出某字段值的絕對值.
FLOOR()函數
FLOOR()函數用于返回小于或等于參數x的最大整數.
RAND()函數
RAND()函數用于返回0~1之間的隨機數.
TRUNCATE(x, y)函數
TRUNCATE(x, y)函數返回x保存到小數點后y位的值.
SQRT(x)函數
SQRT(x)函數用于求參數x的平方根.
下面看一下示例語句:
#求絕對值
SELECT ABS(5), ABS(-5);
#向下取整
SELECT FLOOR(1.5), FLOOR(-2);
#求隨機數
SELECT RAND(), RAND();
#求小數點后幾位
SELECT TRUNCATE(3.141592653, 3);
#求16,25的平方根
SELECT SQRT(16), SQRT(25);
字符串函數
字符串函數主要用來處置數據表中的字符串.下面介紹一下常用的幾個字符串函數.
UPPER(s)和UCASE(s)函數
UPPER(s)和UCASE(s)函數均可用于將字符串s中的所有哦字母釀成大寫字母.
LEFT(s, n)函數
LEFT(s, n)函數返回字符串s的前n個字符.
SUBSTRING(s, n, len)函數
SUBSTRING(s, n, len)函數用于將字符串s的第n個位置開始獲取長度len的字符串.
下面看一下示例語句:
#轉換大寫
SELECT UPPER(‘hello’), UCASE(‘hello’);
#返回字符串的前n個字符
SELECT LEFT(‘hello’, 2);
#截取字符串
SELECT SUBSTRING(‘hello’, 2, 4);
日期和時間函數
日期和時間函數是MySQL中最常用的函數之一,主要用于對表中的日期和時間數據進行處置.下面介紹一下幾個常用的日期和時間函數.
CURDATE()和CURRENT_DATE()函數
CURDATE()和CURRENT_DATE()函數獲取當前日期.
CURTIME()和CURRENT_TIME()函數
CURTIME()和CURRENT_TIME()函數獲取當前時間.
NOW()函數
NOW()函數可以獲取當前日期和時間,有同樣功能的還有CURRENT_TIMESTAMP()、LOCALTIME() 、SYSDATE()和LOCALTIMESTAMP().
下面看一下示例語句:
#獲取當前日期
SELECT CURDATE(), CURRENT_DATE();
#獲取當前時間
SELECT CURTIME(), CURRENT_TIME();
#獲取當前日期和時間
SELECT NOW(), CURRENT_TIMESTAMP(), LOCALTIME(), SYSDATE(), LOCALTIMESTAMP();
其他函數
MySQL中除了上述介紹的幾類內置函數之外,還有很多其他函數,好比條件判斷函數,系統信息函數.下面列舉幾個常用的函數.
IF(expr, v1, v2)函數
IF(expr, v1, v2)函數是一種條件判斷函數,表現的如果表達式expr成立,則執行v1,否則執行v2.
IFNULL(v1, v2)函數
IFNULL(expr, v1, v2)函數也是一種條件判斷函數,表現的如果表達式v1不為空,則顯示v1的值,否則顯示v2的值.
VERSION()函數
VERSION()函數是一種系統信息函數,獲取數據庫的版本號.
下面看一下示(注意引號是英文狀態下):
#查詢分數的優秀情況
SELECT studentNo, courseNo, score, IF(score>85, ‘優秀’, ‘一般’) level FROM tb_score;
#判斷是否為空
SELECT IFNULL(1/0, '空');
#查看數據庫版本號
SELECT VERSION();
希望通過上面的操作能贊助大家學習到更多的MySQL知識.如果你有什么好的意見,建議,或者有不同的看法,我都希望你留言和我們進行交流、討論.
如果想快速聯系我,歡迎存眷微信公眾號:AiryData.
維易PHP培訓學院每天發布《MySQL常用函數學習》等實戰技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養人才。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/7160.html