sql中的常見函式

2022-02-05 01:11:36 字數 2201 閱讀 4872

一、stuff函式

select stuff("abcdef",2,3,"ghijk")

go結果:aghijkef

stuff的功能:刪除指定長度的字串並在指定的起始點插入另一組字元

二、datediff()

datediff(datepart,startdate,enddate)

起主要引數如上。datepart為年月日時分秒等後面兩個就不用說了 ,懂一點英語都能看懂,現在主要介紹一下startdate,enddate的格式問題

如果是print datediff(month,'2008/05/11','2008-04-15')、

print datediff(month,'2004.09.12 ','2008-06-15')、

print datediff(month,'20040912','2008-06-15')、

print datediff(month,'2004-09-12 11:06:08','2008-06-15')

都是可以得到資料的

這樣的話是可以自動轉化的得到結果。說明」/「/和「—」以及「.」可以由我們的msserver自動轉化

三、convert()

1、convert(data_type(length),data_to_be_converted,style)

data_type(length) 規定目標資料型別(帶有可選的長度)。data_to_be_converted 含有需要轉換的值。style 規定日期/時間的輸出格式。

由引數style可以知道此函式可以轉化日期。涉及到很多格式,具體不細說,只舉二個例子說說,其他的可以在網上自己查詢

select

convert

(varchar(12

) , 

getdate

(), 

108) 得到當天的時間(時分秒格式)

20:49:40

select

convert

(varchar(12

) , 

getdate

(), 

102) 

2011.07.15

2、convert(data_type(length),data_to_be_converted)

舉個簡單的例子print convert(char(5),'adfadfadfafd')得到的結果是adfad

再舉個例子print convert(varchar(30) , getdate(), 120 )得到的結果為:2011-07-15 21:02:29

select convert(char(10),convert(varchar(30) , getdate(), 120 ) ) 得到的結果為2011.07.15

select convert(char(10), 123 ) 得到的結果為'123'

由此可以知道convert有兩種引數乙個是兩個的,乙個是三個的

四、replace()

replace(string_expression,string_pattern,string_repalcement)
我們先 不看語法,但是你要知道有三個引數實踐出真理:select replace('123456789', 1,'ab' ) 得到的結果為ab23456789在此有的會認為是第乙個位置其實不是。是msserver把整型自動轉化成了字元型。 select replace('123556789', 4,'ab' )得到的結果為123556789 在此沒有轉化,是因為沒有4這樣的字元,所以不轉化。注意與stuff的區分

五、dateadd()

dateadd(interval, number, date)

interval 必要。字串表示式,是所要加上去的時間間隔。

number 必要。數值表示式,是要加上的時間間隔的數目。其數值可以為正數(得到未來的日期),也可以為負數(得到過去的日期)。

date 必要。variant (date) 或表示日期的文字,這一日期還加上了時間間隔。 特別注意

select dateadd("m", 1, '95-01-31') 得到的結果為1995-02-28 00:00:00.000乙個是注意m是加的乙個月,還有個是預設的會加乙個時間

SQL語言 常見函式

常見函式 1 自定義方法 函式 2 呼叫方法 函式 常見函式 字元函式 concat substr length char length upper lower trim left right lpad rpad instr strcmp 數學函式 absceil floor round trunc...

SQL中常見函式的用法

1replace函式 在sql server 2000中有乙個資訊表,存放新聞資訊,現在客戶想批量更新這個欄位中的某些文字,替換為其他文字。解決方法 利用replace函式 update detail set content replace content,原文本 替換後文字 where 條件 構造...

常見的SQL字串函式

1.len 計算字串的長度 字元的個數 select len 哈哈hello 返回長度為7 2.datalength 計算字串所占用的位元組數,不屬於字串函式 select datalength 哈哈hello 返回長度為9 3.lower upper 轉小寫,大寫 select lower abc...