天天看點

sql server 函數

替換函數:replace(字元串,'被替換内容','替換内容');

字元串截取函數:substring(字元串,開始位置,長度);  //開始位置從1開始 

類型轉換函數:

CONVERT

(類型

,列名或者變量);

       CAST

(列名或者變量 

AS

 類型

);

為空判定函數:Isnull(列名或者變量名,傳回值);  //當指定列或者變量為null時,傳回指定值。

SQL Server Date 函數

GETDATE() 函數傳回目前的時間和日期。

  例:select getdate();  //結果 2017-07-19 14:34:10.007

DATEPART() 函數用于傳回日期/時間的單獨部分,比如年、月、日、小時、分鐘等等。

  文法:DATEPART(datepart,date)

   例:select DATEPART(yy,getdate());  // 結果 2017

DATEADD() 函數在日期中添加或減去指定的時間間隔。

  文法:DATEADD(datepart,number,date)

   例子:select DATEADD(yy,2,getdate());  //結果 2019-07-19 14:47:35.843

DATEDIFF() 函數傳回兩個日期之間的時間。

  文法:DATEDIFF(datepart,startdate,enddate)   //startdate 和 enddate 參數是合法的日期表達式。

  例子:SELECT DATEDIFF(day,'2008-12-29','2008-12-30') AS DiffDate    //結果 1

      SELECT DATEDIFF(day,'2008-12-30','2008-12-29') AS DiffDate    //結果 -1

CONVERT() 函數是把日期轉換為新資料類型的通用函數或者用不同的格式顯示日期/時間資料。

  文法:CONVERT(data_type(length),data_to_be_converted,style)  //data_type(length) 規定目标資料類型(帶有可選的長度)。data_to_be_converted 含有需要轉換的值。style 規定日期/時間的輸出格式。

  例子:select convert(varchar,getdate(),121);  //結果 2017-07-19 14:56:16.730

datepart 參數可以是下列的值:  

datepart 縮寫
yy, yyyy
季度 qq, q
mm, m
年中的日 dy, y
dd, d
wk, ww
星期 dw, w
小時 hh
分鐘 mi, n
ss, s
毫秒 ms
微妙 mcs
納秒 ns

convert函數的style參數取值:

Style ID Style 格式
100 或者 0 mon dd yyyy hh:miAM (或者 PM)
101 mm/dd/yy
102 yy.mm.dd
103 dd/mm/yy
104 dd.mm.yy
105 dd-mm-yy
106 dd mon yy
107 Mon dd, yy
108 hh:mm:ss
109 或者 9 mon dd yyyy hh:mi:ss:mmmAM(或者 PM)
110 mm-dd-yy
111 yy/mm/dd
112 yymmdd
113 或者 13 dd mon yyyy hh:mm:ss:mmm(24h)
114 hh:mi:ss:mmm(24h)
120 或者 20 yyyy-mm-dd hh:mi:ss(24h)
121 或者 21 yyyy-mm-dd hh:mi:ss.mmm(24h)
126 yyyy-mm-ddThh:mm:ss.mmm(沒有空格)
130 dd mon yyyy hh:mi:ss:mmmAM
131 dd/mm/yy hh:mi:ss:mmmAM
  1. 1 --函數:CHARINDEX ( expressionToFind , expressionToSearch [ , start_location ] )  
     2 --功能:在一個字元串中搜尋指定的字元,傳回發現指定的字元的位置  
     3 SELECT CHARINDEX('a','abcdef',1);--傳回1  
     4 SELECT CHARINDEX('f','abcdef',1);--傳回6  
     5   
     6 --函數:SUBSTRING ( expression ,start , length )   
     7 --功能:傳回 SQL Server 中的字元表達式的一部分  
     8 SELECT SUBSTRING('abs',1,2); --傳回ab  
     9 SELECT SUBSTRING('abs',2,2); --傳回bs  
    10   
    11 --函數:REPLACE ( string_expression , string_pattern , string_replacement )   
    12 --功能:用另一個字元串值替換出現的所有指定字元串值  
    13 SELECT REPLACE('ab*=+def','*=+','c');--傳回abcdef