當前位置:首頁 » 編程語言 » sqlserver字元函數

sqlserver字元函數

發布時間: 2024-01-08 17:41:35

sqlserver 按分隔符截取字元串

可以參考下面的代碼:

selectsubstring('ADFASDFD(DASFADSFAS)',1,charindex('(','ADFASDFD(DASFADSFAS)')-1)

主要用到兩個函數,一個charindex,這個是判斷指定字元位置的函數。

另一個是substring,這個是截取字元串的函數。

(1)sqlserver字元函數擴展閱讀:

sqlserver參考函數

upper(char_expr) 轉為大寫

lower(char_expr) 轉為小寫

space(int_expr) 生成int_expr個空格

reverse(char_expr) 反轉字元串

stuff(char_expr1,start,length,char_expr2) 將字元串char_expr1中的從

⑵ sqlserver如何在字元串中間增加字元

直接用估計沒有,可以定義一個函數轉一下,MSSQL中有個stuff函數
在指定位置替換或增加字元,比如:
SELECT STUFF('12345678', 2, 3, 'abc')
SELECT STUFF('12345678', 2, 0, ':')
但只能插入一個位置。
建議自定義一個字元串處理函數,然後在語句中調用吧
比如
create function dbo.fn_setColon (
@oldstr varchar(4000) )
returns varchar(4000)
as
begin
declare @outstr varchar(4000)
set @outstr=''
while (len(@oldstr)>2)
begin
set @outstr=@outstr+left(@oldstr,2)+':'
set @oldstr=right(@oldstr, len(@oldstr)-2)

end
if @oldstr<>''
begin
set @outstr=@outstr+@oldstr
end
return @outstr
end

select dbo.fn_getColon('123456789')
第二種情況可以先把字元串中的字母替換掉,然後再調用該函數,建議還是通過前端程序來處理字元串。

⑶ 在SQL Server資料庫中拆分字元串函數

SQL Server資料庫中拆分字元串函數的具體方法

CREATE FUNCTION uf_StrSplit (@origStr varchar( ) 待拆分的字元串@markStr varchar( )) 拆分標記 如 RETURNS @splittable table( str_id varchar( ) NOT NULL 編號ID string varchar( ) NOT NULL 拆分後的字元串)ASBEGINdeclare @strlen int @postion int @start int @sublen int @TEMPstr varchar( ) @TEMPid intSELECT @strlen=LEN(@origStr) @start= @sublen= @postion= @TEMPstr= @TEMPid= if(RIGHT(@origStr )<>@markStr )beginset @origStr = @origStr + @markStrendWHILE((@postion<=@strlen) and (@postion != ))BEGINIF(CHARINDEX(@markStr @origStr @postion)!= )BEGINSET @sublen=CHARINDEX(@markStr @origStr @postion) @postion;ENDELSEBEGINSET @sublen=@strlen @postion+ ;ENDIF(@postion<=@strlen)BEGINSET @TEMPid=@TEMPid+ ;SET @TEMPstr=SUBSTRING(@origStr @postion @sublen);INSERT INTO @splittable(str_id string)values(@TEMPid @TEMPstr)IF(CHARINDEX(@markStr @origStr @postion)!= )BEGINSET @postion=CHARINDEX(@markStr @origStr @postion)+ ENDELSEBEGINSET @postion=@postion+ ENDENDENDRETURNEND

例如 select * from uf_StrSplit( )

輸出結果

lishixin/Article/program/SQLServer/201311/22421

⑷ SqlServer函數的字元串函數

1 字元串函數
1.1 長度與分析用
datalength(Char_expr) 返回字元串包含字元數,但不包含後面的空格
substring(expression,start,length) 不多說了,取子串
right(char_expr,int_expr) 返回字元串右邊int_expr個字元
1.2 字元操作類
upper(char_expr) 轉為大寫
lower(char_expr) 轉為小寫
space(int_expr) 生成int_expr個空格
replicate(char_expr,int_expr)復制字元串int_expr次
reverse(char_expr) 反轉字元串
stuff(char_expr1,start,length,char_expr2) 將字元串char_expr1中的從
start開始的length個字元用char_expr2代替
ltrim(char_expr) rtrim(char_expr) 取掉空格
ascii(char) char(ascii) 兩函數對應,取ascii碼,根據ascii碼取字元
1.3 字元串查找
charindex(char_expr,expression) 返回char_expr的起始位置
patindex(%pattern%,expression) 返回指定模式的起始位置,否則為0

⑸ MySQL、SQLServer判斷字元串是否包含某字元

MySQL:

在MySQL中使用FIND_IN_SET( st , str )函數來判斷某個字元串是否包含某字元。其中,st表示需要判斷的字元,str表示相應的字元串欄位。如果包含,則返回st字元在字元串中的位置,以1為起點。如果不包含,則返回0;

SQLServer:

在SQLServer中使用CHARINDEX(','+ st +','  ,  ','+ str +',')函數來判斷某個字元串是否包含某字元。其中,st表示需要判斷的字元,str表示相應的字元串欄位。如果包含,則返回st字元在字元串中的位置,以1為起點。如果不包含,則返回0;

注意:在SQLServer函數中,st必須為字元串,使用int則無效,如果是數字類型字元,必須使用雙引號。

⑹ 如何在sql中定義一個函數,函數功能是傳入一個字元串,返回這個字元串中的數

1通過VisualStudio2008新建一個SQLServer項目。2,配置連接的資料庫點擊上一步確定後,可以通過添加新引用來添加一個資料庫連接(只適用MS SQL Server 2005或以上版本,再次提醒哦),添加以後選擇其中一個資料庫點擊確。3,添加一個自定義函數。然後編寫自定義函數的類即可。
用戶自定義函數是指如果要在公式或計算中使用特別復雜的計算,而工作表函數又無法滿足需要,則需要創建用戶自定義函數。

熱點內容
idrac中怎麼控制伺服器 發布:2024-11-30 02:18:27 瀏覽:910
蜘蛛礦池伺服器地址 發布:2024-11-30 02:13:57 瀏覽:169
網易雲訪問記錄 發布:2024-11-30 02:13:17 瀏覽:376
java的數據類型有哪些 發布:2024-11-30 02:12:42 瀏覽:546
win8訪問win7共享 發布:2024-11-30 02:08:33 瀏覽:340
編程錄入錯誤 發布:2024-11-30 02:01:58 瀏覽:733
相機存儲卡無法讀取 發布:2024-11-30 02:00:15 瀏覽:772
美國訪問學者中介 發布:2024-11-30 01:49:47 瀏覽:491
手機版我的世界網易伺服器地鐵 發布:2024-11-30 01:38:57 瀏覽:522
pi幣密碼哪裡看 發布:2024-11-30 01:25:12 瀏覽:671