SQL語言運算子與函式

Michael_DD發表於2014-11-27
SQL語言運算子與函式


表1  各種運算子
+++++++++++++++++++++++++++++++++++++++++++++++++
運算子           含  義
=           相等

!=或<>     不等於

>           大於

>=           大於等於

<           小於

<=                       小於等於

IN(列表)              等於列表中的任意值

BETWEEN值1 AND值2              大於等於值1並且小於等於值2

LIKE%或-                   模式匹配。“%”匹配0個或任意個字元,“-”匹配一個字元

IS NULL             空值

IS NOT NULL     非空值

NOT          邏輯非

AND          邏輯與

OR          邏輯或
+++++++++++++++++++++++++++++++++++++++++++++++++


表2  字元函式列表
+++++++++++++++++++++++++++++++++++++++++++++++++
函式                      功能                                                                      註釋
ASCII(char)             計算char的第一個字元的ASCII值或EBCDIC碼值       函式返回值取決於計算機系統採用的字元

CHAR(n)       計算ASCⅡ碼值或EBCDIC碼值是n的字元     函式n依賴於計算機系統採用的字符集,n的取值為0~127或0~254之間

INITCAP(char)      將char串列埠的每個單詞的首字母變成大寫,其餘字母變為小寫  
單詞之間用數字、空格、逗號、頓號、冒號、分號、句號、1、@、#、$等字元分隔

INSTR(char1,char[,m[,n]])    求char1中從m位置起char2第n次出現的位置    m,n預設值為1,當>0時,
表示從char1的首部起始(從左向右)正向搜尋;  n<0時,表示從char1的尾部起始(從右向左)反向搜尋

LENGTH(char)                    計算字串char的長度  
 
LOWER(char)                    將char中所有的字母改成小寫    

LPAD(char1,n[,char2])    從左側用char2補齊char1至長度n    
char2省略時,用空格填充,n<char1的長度時,表示擷取char1從左至右側n個字元

RPAD(char1,n[,char2])    從右側用char2補齊char1至長度n    
char2省略時,用空格填充,n<char1的長度時,表示擷取char1右側n個符

LTRIM(char[,SET])    把char1中最左側的若干個字元去掉,以使其首字元不在SET中    
SET表示單個字元組在的字符集合。SET若被省略時,表示擷取char左邊的前置空格

RTRIM(char[,SET])    把char中最右側的若干個字元去掉,以使其尾字元不在SET中    
SET表示單個字元組成的字符集合。SET若被省略時,表示擷取char右邊的後置空格

REPLACE(char1,char2[,char3]           將char1中出現的所有char2用char3來代替    char2和char3同時被省略時,
函式返回NULL,僅char3省略時,則表示刪除char1中出現的所有char2

SOUNDEX(char)                           求與char中一個或多個單詞發音相同的字串 
   
SUBSTR(char,m[,n])        返回char中第m個字元起始n個字元長的子串    n省略時,表示擷取char中第m個字元後的子串

TRANSLATE(char1,from,to)           將from字符集轉換為to字符集,char中以from表達的字元用to中相對應的字元所代替  
 
UPPER(char)                                將char中所有的字母改變大寫    
+++++++++++++++++++++++++++++++++++++++++++++++++


表3  數值函式列表
+++++++++++++++++++++++++++++++++++++++++++++++++
函式                     功能                                                                      註釋
ABS(n)                     計算n的絕對值       
允許是數值型常數、數值型列名、包含一個有效數值的文字串或包含一個有效數值的字元型列名

CELL(n)                     計算大於或等於n的最小整數           數學中的向上取整運算

FLOOR(n)             計算大於或等於n的最大整數                 數學中的向下取整運算

MOD(m,n)             計算m除以n的餘數n=0時,返回m           MOD(m,1)=0說明m是一個整數

POWER(m,n)   ROUND(m,[,n])       計算m的n次方,n>0時,將m四捨五入到小數點右邊n位n<0時,
將m四捨五入到小數點左邊n位   n要求為整數,否則出錯n=0或n被省略表示對m進行取整


SIGN(n)               判斷n的正負       如果n>0,函式返回1;n=0,函式反加0,n<0,函式反回


SQRT(n)  TRUNC(m,[,n])       計算n的平方根,n>0時,將m小數點右邊n位截斷;n<0時,將m小數點左邊的n位後各位截斷
並新增n個0    n<0時,函式返回NULLn=0或n被省略表示對m進行取整

 
表4  日期函式列表
+++++++++++++++++++++++++++++++++++++++++++++++++
函式                          功能                             註釋
ADD_MONTHS(d,n)     計算d加上n個月的日期      
n要求為整數,n>0時,返回d之後n個月的日期;n<0時,返回d之前n個月的日期

LAST_DAY(d)             計算d所在月份最後一天的日期    用來確定給定月份中的天數

MONTHS_BETWEEN(d1,d2)   計算d1和d2之間相隔的月數    返加結果>0時,表示d1晚於d2;返回結果<0時,表示d1早於d2

NEXT_DAY(d,s)       計算晚於d的第一個s的日期    
s要求是’Sunday’,’Monday’,’Tuesday’,’Wednesday’,’Thursday’,’Friday’或’Saturday’

SYSDATE                          求系統當前日期和時間    
+++++++++++++++++++++++++++++++++++++++++++++++++



表5  聚組函式列表
+++++++++++++++++++++++++++++++++++++++++++++++++
函 數                           功 能
AVG(e)            計算一組行中e值的平均值
COUNT(e)       計算一組行中e值為非空值的行數
COUNT(*)    計算表中的行數(包括重複值和空值)
MAX(e)            計算一組行中e值的最大值
MIN(e)            計算一組行中e值的最小值
STDDEV(e)    計算一組行中e值的標準差
SUM(e)            計算一組行中e值的總和
VARIANCE(e)    計算一組行中e值的方差
+++++++++++++++++++++++++++++++++++++++++++++++++


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29500582/viewspace-1349028/,如需轉載,請註明出處,否則將追究法律責任。

相關文章