Ⅰ sqlserver中將一個含有「=」的欄位拆分成兩個欄位顯示出來,請資料庫高手指點
Declare @S1 varchar(100) SUBSTRIN
Select @S1='aa=bb'
Select Substring(@S1,CHARINDEX('aa',@S1)+1,Len(@S1))
Ⅱ sqlserver拆分字元串用的是什麼函數
SQL Server中自定義函數:用指定的分隔符號分割字元串
http://www.cnblogs.com/SavionZhang/p/4094459.html
Ⅲ sql server中如何把下面的欄位拆分成4個欄位
你這是xml格式的啊,是文件?還是什麼?
用xml的組建進行分析,然後獲取欄位,插入表;這是一種方案
要不你就寫存儲過程,將數據取出來,對字元串進行分析,獲取各列的值就可了。
Ⅳ sql建立視圖時候,基礎表中欄位是vc類型的,我如何拆分這個數據呢
首先你要保證基礎表中 那個欄位的值格式是相同的,如「1.1-20.2」、「5.3-11.2」;也就是說要有相同的分隔符;
其次,你要注意如果欄位中出現字元串,如「1.1e-20.2」,這樣的格式你是無法轉換的;
最後,我不知道樓主為什麼要把那個范圍值設置到一個欄位,不用兩個分開;用的時候SQL組合一下,完全也可以達到效果的。
Ⅳ sqlserver拆分長欄位。正則表達式
([\s\S]*?)(\d{4}-\d{2}-\d{2}\s+\d{2}:\d{2})
正則可以這樣寫
拆分的話
在代碼裡面做會方便一些吧
Ⅵ 求SQL高手----將一條記錄中的某個欄位拆分,多行顯示
4行變成1行?如果用SQLServer的話,可以用一種很詭異的方法:SELECTDISTINCT','+SALE_ITEMFROMSALE_REPORTFORXMLPATH('')樓主可以測試一下,最後用一個FORXMLPATH('')就好。我上面的SQL執行結果為:,C,A,B
Ⅶ sqlserver 怎麼分割字元串
如樓上給的 單獨分割一部分 也可用下面的函數 分割出一個集合
--1.0拆分字元串參數@strSource要操作的字元串@strSeparator分隔符
CREATEFUNCTION[dbo].fn_splitStr(@strSourceNVARCHAR(4000),@strSeparatorNVARCHAR(10))
RETURNS@tbResultTABLE(idINTIDENTITY(1,1),rsNVARCHAR(1000))
AS
BEGIN
DECLARE@dwIndexINT,@strResultNVARCHAR(1000),@dwSeparatorLenINT=LEN(@strSeparator);
SET@dwIndex=CHARINDEX(@strSeparator,@strSource);--取得第一個分隔符的位置
WHILE@dwIndex>0
BEGIN
SET@strResult=LEFT(@strSource,@dwIndex-1);
INSERT@tbResultVALUES(@strResult);
--將要操作的字元串去除已切分部分
SET@strSource=SUBSTRING(@strSource,@dwIndex+LEN(@dwIndex),LEN(@strSource));
SET@dwIndex=CHARINDEX(@strSeparator,@strSource);--循環量增加
END
--處理最後一節
IFLEN(@strSource)>0INSERT@tbResultVALUES(@strSource)
RETURN;
END
GO
Ⅷ sqlserver資料庫欄位拆分問題。我現在只會寫拆分第一個;的,
SUBSTRING 可以不?
Ⅸ sqlserver數據拆分的問題
select logintime,
logouttime=cast(convert(char(10),logintime,120) + ' 23:59:59' as datetime)
from user_online
where logintime <=cast(convert(char(10),logintime,120) + ' 23:59:59' as datetime)
and logouttime >cast(convert(char(10),logintime,120) + ' 23:59:59' as datetime)
union
select logintime=cast(convert(char(10),logouttime,120) + ' 00:00:00' as datetime),
logouttime
from user_online
where logintime <=cast(convert(char(10),logintime,120) + ' 23:59:59' as datetime)
and logouttime >cast(convert(char(10),logintime,120) + ' 23:59:59' as datetime)
Ⅹ sqlserver 按分隔符截取字元串
可以參考下面的代碼:
selectsubstring('ADFASDFD(DASFADSFAS)',1,charindex('(','ADFASDFD(DASFADSFAS)')-1)
主要用到兩個函數,一個charindex,這個是判斷指定字元位置的函數。
另一個是substring,這個是截取字元串的函數。
(10)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中的從