99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
2022-01-24 閱讀量: 1057
SQL七大類函數(shù)大全及示例簡析

概述

SQL中包含以下七種類型的函數(shù):


  1. 聚合函數(shù):返回匯總值。

  2. 轉(zhuǎn)型函數(shù):將一種數(shù)據(jù)類型轉(zhuǎn)換為另外一種。

  3. 日期函數(shù):處理日期和時間。

  4. 數(shù)學(xué)函數(shù):執(zhí)行算術(shù)運算。

  5. 字符串函數(shù):對字符串、二進制數(shù)據(jù)或表達式執(zhí)行操作。

  6. 系統(tǒng)函數(shù):從數(shù)據(jù)庫返回SERVER中的值、對象或設(shè)置的特殊信息。

  7. 文本和圖像函數(shù):對文本和圖像數(shù)據(jù)執(zhí)行操作。


1、聚合函數(shù)

它對其應(yīng)用的每個行集返回一個值。


  • AVG(表達式) 返回表達式中所有的平均值。僅用于數(shù)字列并自動忽略NULL值。


  • COUNT(表達式) 返回表達式中非NULL值的數(shù)量。可用于數(shù)字和字符列。


  • COUNT(*) 返回表中的行數(shù)(包括有NULL值的列)。


  • MAX(表達式) 返回表達式中的最大值,忽略NULL值。可用于數(shù)字、字符和日期時間列。


  • MIN(表達式) 返回表達式中的最小值,忽略NULL值。可用于數(shù)字、字符和日期時間列。


  • SUM(表達式) 返回表達式中所有的總和,忽略NULL值。僅用于數(shù)字列。


2、轉(zhuǎn)換函數(shù)

有CONVERT和CAST兩種。


  • CONVERT(data_type[(length)], expression [, style])

    例: Select convert(varchar(10) ,stuno) as stuno,stuname from student


  • CAST( expression AS data_type )

    例: Select cast(stuno as varchar(10)) as stuno,stuname from student


Cast和Convert的區(qū)別

Cast 和Convert都是用來將一種數(shù)據(jù)類型的表達式轉(zhuǎn)換為另一種數(shù)據(jù)類型的表達式。CAST 和 CONVERT 提供相似的功能,只是語法不同。在時間轉(zhuǎn)化中一般用到convert,因為它比cast多加了一個style,可以轉(zhuǎn)化成不同時間的格式。


3、日期函數(shù)

由于不能直接執(zhí)行算術(shù)函數(shù),所以日期函數(shù)就十分有用。


  • GETDATE() 當(dāng)前的系統(tǒng)日期。

    select GETDATE() --結(jié)果:xxxx-xx-xx 18:34:27.343


  • DATEADD(日期部分,number,date) 返回帶有指定數(shù)字(number)的日期(date),該數(shù)字添加到指定的日期部分(datepart)

    select DATEADD(dd, 5, getdate()) --增加5天時間


  • DATEDIFF(日期部分,date1,date2) 返回兩個日期中指定的日期部分之間的差值。

    select DATEDIFF(mm, '2010-1-1', '2010-3-1 00:00:00') --結(jié)果:2


  • DATENAME(日期部分,date) 返回日期中日期部分的字符串形式。

    select DATENAME(dw,GETDATE()) --結(jié)果:星期二


    注:DATENAME 和 DATEPART 的區(qū)別,返回的值類型不同,一個是VARCHAR一個是INT,另外就是星期會用本地語言來表示


  • DATEPART(日期部分,date) 返回日期中指定的日期部分的整數(shù)形式。

    select DATEPART(dw,GETDATE()) --結(jié)果(返回今天是一周中的第幾天):3


  • YEAR(date) 返回指定日期的年份數(shù)值

    select YEAR(GETDATE()) --結(jié)果:2019


  • MONTH(date)返回指定日期的月份數(shù)值


  • DAY(date)返回指定日期的天數(shù)值


注:當(dāng)顯示日期列的內(nèi)容時如果只顯示年月日部分,可以使用CONVERT轉(zhuǎn)換函數(shù)對日期列進行轉(zhuǎn)換


CONVERT(VARCHAR(10),日期字段名,120) --120 為日期格式Y(jié)YYY-MM-DD


SELECT CONVERT(VARCHAR(10),盤點日期,120) AS 盤點日期 FROM 原材料盤點日期明細表





4、數(shù)字函數(shù)

對數(shù)字值執(zhí)行代數(shù)運算。


  • ABS(num_expr) 返回數(shù)值表達式的絕對值。


  • ACOS(float_expr) 返回角(以弧度表示),它的余弦值近似于指定的浮點表達式。


  • ASIN(float_expr) 返回角(以弧度表示),它的正弦值近似于指定的浮點表達式。


  • ATAN(float_expr) 返回角(以弧度表示),它的正切值近似于指定的浮點表達式。


  • ATN2(float_expr1, float_expr2) 返回角(以弧度表示),它的正切值在兩個近似的浮點表達式之間。


  • CEILING(num_expr) 返回大于或等于數(shù)值表達式的最小整數(shù)。


  • COS(float_expr) 返回以浮點表達式表示的近似于指定角度(以弧度表示)的余弦三角函數(shù)的值。


  • COT(float_expr) 返回以浮點表達式表示的近似于指定角度(以弧度表示)的余切三角函數(shù)的值。


  • DEGREES(num_expr)返回數(shù)值表達式表示的弧度值對應(yīng)的度值。


  • EXP(float_expr) 根據(jù)指定的近似浮點表達式,返回指數(shù)值。


  • FLOOR(num_expr) 返回小于或等于數(shù)值表達式的最大整數(shù)


  • LOG(float_expr) 根據(jù)指定的近似浮點表達式,返回自然對數(shù)值。


  • LOG10(float_expr) 根據(jù)指定的近似浮點表達式,返回以為底的對數(shù)。


  • PI() 返回常量值.141592653589793


  • POWER(num_expr,y) 返回冪為y的數(shù)值表達式的值。


  • RADIANS(num_expr) 返回數(shù)值表達式表示的度值對應(yīng)的弧度值。


  • RAND([seed]) 隨機返回的到之間的近似浮點值,可以對seed指定為整數(shù)表達式(可選)。


  • ROUND(num_expr,length) 對數(shù)值表達式截取指定的整數(shù)長度,返回四舍五入后的值。


  • SIGN(num_expr) 對正數(shù)執(zhí)行+1操作,對負數(shù)和零執(zhí)行-1操作。


  • SIN(float_expr) 返回以浮點表達式表示的近似于指定角度(以弧度表示)的正弦三角函數(shù)的值。


  • SQUARE(float_expr) 返回浮點表達式的平均值。


  • SQRT(float_expr) 返回指定的近似浮點表達式的平方根。


  • TAN(float_expr) 返回以浮點表達式表示的近似于指定角度(以弧度表示)的正切三角函數(shù)的值。


5、字符串函數(shù)

可用于binary 和varbinary數(shù)據(jù)類型列,但主要用于char和varchar數(shù)據(jù)類型。


  • Expr1+expr2 返回兩個表達式的組合形式的字符串。


  • ASCII(char_expr) 返回表達式最左邊字符的ASCⅡ代碼值。


  • CHAR(int_expr) 返回到之間的整數(shù)表達式的ASCⅡ字符值。如果輸入的值不在有效范圍內(nèi),則返回NULL。


  • CHARINDEX('pattern',char_expr) 返回字符表達式中指定模式的起始位置。


  • DIFFERENCE(char_expr1,char_expr2) 根據(jù)比較兩個字符表達式的相似度,返回到之間的值。表示匹配度最佳。


  • LEN(char_expr) 返回字符表達式的長度。


  • LOWER(char_expr) 將字符表達式全部轉(zhuǎn)換為小寫。


  • LTRIM(char_expr) 返回刪除掉前面空格的字符表達式。


  • PATINDEX('%pattern%',expr) 返回表達式中模式第一次出現(xiàn)的起始位置。返回表示不存在模式形式。


  • REPLICATE(char_expr,int_expr) 返回重復(fù)指定次數(shù)的字符表達式產(chǎn)生的字符串。


  • REVERSE(char_expr) 反轉(zhuǎn)字符表達式。


  • RIGHT(char_expr,int_expr) 返回從字符表達式最右端起根據(jù)指定的字符個數(shù)得到的字符。


  • RTRIM(char_expr) 返回刪除掉其后空格的字符表達式。


  • SOUNDEX(char_expr) 評估兩個字符串的相似度后得到的位代碼。


  • SPACE(int_expr) 返回包含指定空格數(shù)的字符串。


  • STR(float_expr[,length[,decimal]]) 返回浮點表達式的字符串表示法。


  • STUFF(char_expr1,start,length,char_expr2) 使用字符表達式替換字符表達式的一部分字符,從指定的位置開始替換指定的長度。


  • SUBSTRING(char_expr,start,length) 返回從字符表達式的指定位置開始,截取指定長度得到的字符集。


  • UPPER(char_expr) 將字符表達式全部轉(zhuǎn)換為大寫。


6、系統(tǒng)函數(shù)

用于返回元數(shù)據(jù)或配置設(shè)置。


  • COALESCE(expr1,expr2, xprN) 返回第一個非NULL表達式。


  • COL_LENGTH('table_name','column_name') 返回列的長度。


  • COL_NAME(table_id,column_id) 返回指定的表中的列名。


  • DATALENGTH('expr') 返回任何數(shù)據(jù)類型的實際長度。


  • DB_ID([‘database_name']) 返回數(shù)據(jù)庫的標(biāo)識號。


  • DB_NAME([database_id]) 返回數(shù)據(jù)庫的名稱。


  • GETANSINULL([‘database_name']) 返回數(shù)據(jù)庫的默認空性(Nullability)。


  • HOST_ID() 返回工作站的標(biāo)識號。


  • HOST_NAME() 返回工作站的名稱。


  • IDENT_INCR('table_or_view') 有新的記錄添加入到表中時計數(shù)加。


  • IDENT_SEED('table_or_view') 返回標(biāo)識列的起始編號。


  • INDEX_COL('table_name',index_id,key_id) 返回索引的列名。


  • ISNULL(expr,value) 使用指定的值替換的NULL表達式。


  • NULLIF(expr1,expr2) Expr1與Expr2相等時,返回Null。


  • OBJECT_ID('obj_name') 返回數(shù)據(jù)庫對象標(biāo)識號。


  • OBJECT_NAME('object_id') 返回數(shù)據(jù)庫對象名。


  • STATS_DATE(table_id,index_id) 返回上次更新指定索引的統(tǒng)計的日期。


  • SUSER_SID([‘login_name']) 返回用戶的登錄標(biāo)識號。


  • SUSER_ID([‘login_name']) 返回用戶的登錄標(biāo)識號。這個函數(shù)類似于SUSER_SID()函數(shù),并且保留了向后的兼容性。


  • SUSER_SNAME([server_user_id]) 返回用戶的登錄標(biāo)識號。


  • SUSER_NAME([server_user_id]) 返回用戶的登錄標(biāo)識號。這個函數(shù)類似于SUSER_SNAME()函數(shù),并且保留了向后的兼容性。


  • USER_ID('user_name') 返回用戶的數(shù)據(jù)庫標(biāo)識號。


  • USER_NAME(['user_id']) 返回用戶的數(shù)據(jù)庫名稱。


7、文本和圖像函數(shù)

通常返回有關(guān)文本和圖像數(shù)據(jù)所需的信息。文本和圖像數(shù)據(jù)是以二進制格式的形式進行存儲的。


  • TEXTPTR(col_name) 返回varbinary格式的文本指針值。對文本指針進行檢查以確保它指向第一個文本頁。


  • TEXTVALID('table_name.col_name',text_ptr)檢查給定的文本指針是否有效。返回表示有效,返回表示指針無效。


43.8484
0
關(guān)注作者
收藏
評論(0)

發(fā)表評論

暫無數(shù)據(jù)
推薦帖子