第八節:SQLServer函數大全(一)--字符串函數、數學函數


一. 字符串函數

1. 返回字符串中最左側的第一個值的ASCII代碼值

select ASCII('SS'),ASCII('SQL'),ASCII('1')

2. 將整數類型的ASCII值轉換成對應的字符

select CHAR(115),CHAR(49)

3. 從左側或者從右側獲取指定個數的元素

select LEFT('yaopengfei',6) as p1
select RIGHT('yaopengfei',5) as p2

4. 從左側去空格或者從右側去空格

select LTRIM('   ypf   ')
select RTRIM('   ypf   ')

5. 逆序字符串

select REVERSE('ypf')

6.返回字符串的長度

select LEN('ypf'),LEN('李馬茹')

7 查找字符串的開始位置

  CHARINDEX(str1,str,[start])函數返回子字符串str1在字符串str中的開始位置,start為搜索的開始位置,如果指定start參數,則從指定位置開始搜索;如果不指定start參數或者指定為0或者負值,則從字符串開始位置搜索。

select CHARINDEX('a','banana'),CHARINDEX('a','banana',4), CHARINDEX('na','banana', 4);

8.截取字符串的指定位置

下面 1 代表從第一個位置開始截取,5 代表截取字符的長度為 5。

select SUBSTRING('breakfast',1,5)

9. 大小寫轉換

select UPPER('Red'),LOWER('Red')

10. 替換函數

select REPLACE('www.baidu.com','w','x')

11. 將數值類型轉換成字符數據 (位數的優先原則,從左側數,優先整數)

select STR(3141.59,6,1),STR(123.45,5,2)

 

 

二. 數學函數

1. 絕對值和圓周率

select ABS(-2.5),ABS(-7.5),PI()

 

2. 平方根

select SQRT(4),SQRT(9)

 

3. 隨機數

  RAND(x)返回一個隨機浮點值v,范圍在0~1之間(即0<=v<=1.0)。若指定一個整數參數x,則它被用作種子值,使用相同的種子數將產生重復序列。如果同一種子值多次調用RAND函數,它將返回同一生成值。

select RAND(),RAND(),RAND();
select RAND(5),RAND(5),RAND(11);

 

4. 四舍五入

  ROUND(x,y)返回接近於參數x的數,其值保留到小數點后面y位,若y為負值,則將保留x值到小數點左邊y位。

select ROUND(1.54,1),ROUND(1.56,1),ROUND(12.54,-1)

 

5. 判斷正、負、零

  SIGN(x)返回參數的符號,x的值為負、零、正時,返回結果依次為-1、0、1。

select SIGN(10),SIGN(-10),SIGN(0)

 

6. 不小於x的最小值、不大於x的最大值

  CEILING(x)返回不小於x的最小整數值,FLOOR(x)返回不大於x的最大整數值。

select CEILING(-3.35), CEILING(3.35), FLOOR(-3.35)

 

7. 冪運算函數

(1). POWER(x,y) 求x的y次方

select POWER(2,3),POWER(3,2)

(2). SQUARE(x) 求x的平方

select SQUARE(3),SQUARE(-6),SQUARE(0)

(3). EXP(x) 求e的x次方

select EXP(2)

8. 對數運算

(1). LOG(x)返回x的自然對數,x相對於基數e的對數。
(2). LOG10(x)返回x的基數為10的對數。
select LOG(3), LOG(6), LOG10(1), LOG10(100), LOG10(1000);

 

9.角度和弧度的轉換

select RADIANS(90.0), RADIANS(180.0), DEGREES(PI()/2), DEGREES(PI());

 

10. 正弦、反正弦

select SIN(PI()/2),SIN(PI()),ASIN(1),ASIN(0);

 

11. 余弦、反余弦

select COS(0),COS(PI()),ACOS(1),ACOS(0);

 

12. 正切、反正切、余切

select TAN(0.3),ROUND(TAN(PI()/2),0), ATAN(0.30933624960962325),ATAN(1),COT(0.3),1/TAN(0.3),COT(PI()/4);

 

 

 

 

 

 

!

  • 作       者 : Yaopengfei(姚鵬飛)
  • 博客地址 : http://www.cnblogs.com/yaopengfei/
  • 聲     明1 : 如有錯誤,歡迎討論,請勿謾罵^_^。
  • 聲     明2 : 原創博客請在轉載時保留原文鏈接或在文章開頭加上本人博客地址,否則保留追究法律責任的權利。
 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM