學(xué)習(xí)SQL,有很多時(shí)候需要使用到系統(tǒng)函數(shù),比如一些統(tǒng)計(jì)函數(shù)(聚合函數(shù)),日期函數(shù),字符串函數(shù)等。今天給大家整理了一份SQL Server的常用函數(shù),希望對(duì)你有所幫助。 1、統(tǒng)計(jì)函數(shù)(聚合函數(shù)) AVG() --求平均值 COUNT() --統(tǒng)計(jì)數(shù)目 MAX() --求最大值 MIN() --求最小值 SUM() --求和 STDEV() --STDEV()函數(shù)返回表達(dá)式中所有數(shù)據(jù)的標(biāo)準(zhǔn)差 STDEVP() --STDEVP()函數(shù)返回總體標(biāo)準(zhǔn)差 VAR() --VAR()函數(shù)返回表達(dá)式中所有值的統(tǒng)計(jì)變異數(shù) VARP() --VARP()函數(shù)返回總體變異數(shù)
(提示:可以左右滑動(dòng)代碼)
2、算術(shù)函數(shù) /***三角函數(shù)***/ SIN(float_expression) --返回以弧度表示的角的正弦 COS(float_expression) --返回以弧度表示的角的余弦 TAN(float_expression) --返回以弧度表示的角的正切 COT(float_expression) --返回以弧度表示的角的余切
/***反三角函數(shù)***/ ASIN(float_expression) --返回正弦是FLOAT 值的以弧度表示的角 ACOS(float_expression) --返回余弦是FLOAT 值的以弧度表示的角 ATAN(float_expression) --返回正切是FLOAT 值的以弧度表示的角 ATAN2(float_expression1,float_expression2) --返回正切是float_expression1 /float_expres-sion2的以弧度表示的角 DEGREES(numeric_expression) --把弧度轉(zhuǎn)換為角度返回與表達(dá)式相同的數(shù)據(jù)類(lèi)型可為INTEGER/MONEY/REAL/FLOAT 類(lèi)型 RADIANS(numeric_expression) --把角度轉(zhuǎn)換為弧度返回與表達(dá)式相同的數(shù)據(jù)類(lèi)型可為INTEGER/MONEY/REAL/FLOAT 類(lèi)型 EXP(float_expression) --返回表達(dá)式的指數(shù)值 LOG(float_expression) --返回表達(dá)式的自然對(duì)數(shù)值 LOG10(float_expression) --返回表達(dá)式的以10 為底的對(duì)數(shù)值 SQRT(float_expression) --返回表達(dá)式的平方根
/***取近似值函數(shù)***/ CEILING(numeric_expression) --返回大于或等于表達(dá)式的最小整數(shù)返回的數(shù)據(jù)類(lèi)型與表達(dá)式相同可為 --INTEGER/MONEY/REAL/FLOAT 類(lèi)型 FLOOR(numeric_expression) --返回小于或等于表達(dá)式的最小整數(shù)返回的數(shù)據(jù)類(lèi)型與表達(dá)式相同可為 --INTEGER/MONEY/REAL/FLOAT 類(lèi)型 ROUND(numeric_expression) --返回以integer_expression 為精度的四舍五入值返回的數(shù)據(jù) --類(lèi)型與表達(dá)式相同可為INTEGER/MONEY/REAL/FLOAT 類(lèi)型 ABS(numeric_expression) --返回表達(dá)式的絕對(duì)值返回的數(shù)據(jù)類(lèi)型與表達(dá)式相同可為 --INTEGER/MONEY/REAL/FLOAT 類(lèi)型 SIGN(numeric_expression) --測(cè)試參數(shù)的正負(fù)號(hào)返回0 零值1 正數(shù)或-1 負(fù)數(shù)返回的數(shù)據(jù)類(lèi)型 --與表達(dá)式相同可為INTEGER/MONEY/REAL/FLOAT 類(lèi)型 PI() --返回值為π 即3.1415926535897936 RAND([integer_expression]) --用任選的[integer_expression]做種子值得出0-1 間的隨機(jī)浮點(diǎn)數(shù)
3、字符串函數(shù) ASCII() --函數(shù)返回字符表達(dá)式最左端字符的ASCII 碼值 CHAR() --函數(shù)用于將ASCII 碼轉(zhuǎn)換為字符 --如果沒(méi)有輸入0 ~ 255 之間的ASCII 碼值CHAR 函數(shù)會(huì)返回一個(gè)NULL 值 LOWER() --函數(shù)把字符串全部轉(zhuǎn)換為小寫(xiě) UPPER() --函數(shù)把字符串全部轉(zhuǎn)換為大寫(xiě) STR() --函數(shù)把數(shù)值型數(shù)據(jù)轉(zhuǎn)換為字符型數(shù)據(jù) LTRIM() --函數(shù)把字符串頭部的空格去掉 RTRIM() --函數(shù)把字符串尾部的空格去掉
LEFT(),RIGHT(),SUBSTRING() --函數(shù)返回部分字符串
CHARINDEX(),PATINDEX() --函數(shù)返回字符串中某個(gè)指定的子串出現(xiàn)的開(kāi)始位置
SOUNDEX() --函數(shù)返回一個(gè)四位字符碼 --SOUNDEX函數(shù)可用來(lái)查找聲音相似的字符串但SOUNDEX函數(shù)對(duì)數(shù)字和漢字均只返回0 值
DIFFERENCE() --函數(shù)返回由SOUNDEX 函數(shù)返回的兩個(gè)字符表達(dá)式的值的差異 --0 兩個(gè)SOUNDEX 函數(shù)返回值的第一個(gè)字符不同 --1 兩個(gè)SOUNDEX 函數(shù)返回值的第一個(gè)字符相同 --2 兩個(gè)SOUNDEX 函數(shù)返回值的第一二個(gè)字符相同 --3 兩個(gè)SOUNDEX 函數(shù)返回值的第一二三個(gè)字符相同 --4 兩個(gè)SOUNDEX 函數(shù)返回值完全相同
QUOTENAME() --函數(shù)返回被特定字符括起來(lái)的字符串 REPLICATE() --函數(shù)返回一個(gè)重復(fù)character_expression 指定次數(shù)的字符串 REVERSE() --函數(shù)將指定的字符串的字符排列順序顛倒 REPLACE() --函數(shù)返回被替換了指定子串的字符串 SPACE() --函數(shù)返回一個(gè)有指定長(zhǎng)度的空白字符串 STUFF() --函數(shù)用另一子串替換字符串指定位置長(zhǎng)度的子串
4、數(shù)據(jù)類(lèi)型轉(zhuǎn)換函數(shù) CAST() 函數(shù)語(yǔ)法如下 CAST (expression AS data_type(length)) CONVERT() 函數(shù)語(yǔ)法如下 CONVERT(data_type(length),data_to_be_converted,style)
5、日期函數(shù) DAY() --函數(shù)返回date_expression 中的日期值 MONTH() --函數(shù)返回date_expression 中的月份值 YEAR() --函數(shù)返回date_expression 中的年份值 DATEADD(datepart,number,date) --函數(shù)返回指定日期date 加上指定的額外日期間隔number 產(chǎn)生的新日期 DATEDIFF(datepart,startdate,enddate) --函數(shù)返回兩個(gè)指定日期在datepart 方面的不同之處 DATENAME(datepart,date) --函數(shù)以字符串的形式返回日期的指定部分 DATEPART(datepart,date) --函數(shù)以整數(shù)值的形式返回日期的指定部分 GETDATE() --函數(shù)以DATETIME 的缺省格式返回系統(tǒng)當(dāng)前的日期和時(shí)間
6、系統(tǒng)函數(shù) APP_NAME() --函數(shù)返回當(dāng)前執(zhí)行的應(yīng)用程序的名稱(chēng) COALESCE() --函數(shù)返回眾多表達(dá)式中第一個(gè)非NULL 表達(dá)式的值 COL_LENGTH('table_name', 'column_name') --函數(shù)返回表中指定字段的長(zhǎng)度值 COL_NAME(table_id,column_id) --函數(shù)返回表中指定字段的名稱(chēng)即列名 DATALENGTH() --函數(shù)返回?cái)?shù)據(jù)表達(dá)式的數(shù)據(jù)的實(shí)際長(zhǎng)度 DB_ID(['database_name']) --函數(shù)返回?cái)?shù)據(jù)庫(kù)的編號(hào) DB_NAME(database_id) --函數(shù)返回?cái)?shù)據(jù)庫(kù)的名稱(chēng) HOST_ID() --函數(shù)返回服務(wù)器端計(jì)算機(jī)的名稱(chēng) HOST_NAME() --函數(shù)返回服務(wù)器端計(jì)算機(jī)的名稱(chēng) IDENTITY (data_type [ , seed , increment ] ) AS column_name --IDENTITY() 函數(shù)只在SELECT INTO 語(yǔ)句中使用用于插入一個(gè)identity column列到新表中 ISDATE() --函數(shù)判斷所給定的表達(dá)式是否為合理日期 ISNULL(check_expression, replacement_value) --函數(shù)將表達(dá)式中的NULL 值用指定值替換 ISNUMERIC() --函數(shù)判斷所給定的表達(dá)式是否為合理的數(shù)值 NEWID() --函數(shù)返回一個(gè)UNIQUEIDENTIFIER 類(lèi)型的數(shù)值 NULLIF(expression1, expression2) --NULLIF 函數(shù)在expression1 與expression2 相等時(shí)返回NULL 值若不相等時(shí)則返回expression1 的值 今天的內(nèi)容就分享到這里,下次再給大家?guī)?lái)MySQL和Oracle的常用函數(shù)~——End——
|