A. sql如何分隔字元查詢結果
select substr(t.times,1,2) from from t_customer t where rownum=1
union
select substr(t.times,4,2) from from t_customer t where rownum=1
B. sql以逗號分隔的字元串查詢每個字元出現的個數
sql中可以自定義函數來統計逗號隔開的字元串的數量:
參考如下:
drop function search_dh
go
CREATE FUNCTION search_dh(@str varchar(max))
returns int--設置返回值是returns
AS
BEGIN
DECLARE @result int --返回逗號個數
declare @j int
set @result = 0
set @j = 1
while @j<len(@str)
begin
if substring(@str,@j,1) = ',' --@j是開始位置,1位置參數是長度值
begin
set @result = @result+1
end
set @j = @j+1 --如果出現無限循環請檢查參數是否加1以及位置問題
end
return @result --返回結果
END
用法:
select dbo.search_dh ('a,b,c') --引用自定義函數時需要加上dbo.前綴
SELECT x = SUBSTRING('abcdef',2, 2)
C. sql分割字元串查詢,分組統計
首先掌握sql中分割字元串的方法:
declare @sql varchar(2000),@tsql nvarchar(max),@split varchar(100)
set @sql='1,3,5,6,8' --保存的字元
set @split=','--分隔符
select @tsql='select '''+replace(@sql,@split,''' union all select ''')+''''
exec(@tsql)
----完成之後將查詢結果保存在一張臨時表中。
然後使用 select count(*) , 欄位名 from 表名 group by 欄位名 就可以得到您想要的結果了。
希望對您有所幫助!
D. SQL語言如何將表內字元串按分割符號分割存儲
用replace函數,將分號或者 @ 符號, 替換為你的其他分隔符。
REPLACE
用第三個表達式替換第一個字元串表達式中出現的所有第二個給定字元串表達式。
語法
REPLACE ( ''string_replace1'' , ''string_replace2'' , ''string_replace3'' )
參數
''string_replace1''
待搜索的字元串表達式。string_replace1 可以是字元數據或二進制數據。
''string_replace2''
待查找的字元串表達式。string_replace2 可以是字元數據或二進制數據。
''string_replace3''
替換用的字元串表達式。string_replace3 可以是字元數據或二進制數據。
返回類型
如果 string_replace(1、2 或 3)是支持的字元數據類型之一,則返回字元數據。如果 string_replace(1、2 或 3)是支持的 binary 數據類型之一,則返回二進制數據。
示例
下例用 xxx 替換 abcdefghi 中的字元串 cde。
SELECT REPLACE(''abcdefghicde'',''cde'',''xxx'')GO
下面是結果集:
------------abxxxfghixxx(1 row(s) affected)
E. sql 兩個欄位都是逗號隔開 怎麼精確查找某個值
你好!
你用select
*
from
tmpdata
where
wid
=
'2',不應該出現1
1,2
weibo,qq啊
僅代表個人觀點,不喜勿噴,謝謝。
F. sql查詢以逗號分隔的欄位
這樣寫:
where AA like '2,%' or AA like '%,2' or AA like '%,2,%'
G. 在sql server資料庫中查詢一個用逗號分隔的欄位的問題
你說的是選出含有任意一個選中的欄位的值,那隻要欄位1的內容不是空或者null就行了啊。如果是待條件查詢的話,只要加上你的條件就好了啊.
declare @a char(10)
set @a = 'a' --任意你想要的查詢的值
select * from 表 where 欄位1 like '%' + @a + '%'
結果就是根據你給出的條件,檢索出所有符合你條件的記錄。
H. sql查詢:一個欄位中內容用逗號隔開,查找逗號前的某一內容
用CHARINDEX 算出逗號排在第幾個字元,然後用substring 截取:
select substring ('信息處,生產監督信息處',1,CHARINDEX(',','信息處,生產監督信息處')-1)
I. sql逗號分隔查詢,急急急!!
--模擬的變數表 最下面是語句
declare @table table (a varchar(20),b varchar(20))
insert into @table(a,b) values('12,13','13,41')
insert into @table(a,b) values('14,13','24,24')
--實現的語句
select left(a,charindex(',',a)-1) as '重1左',right(a,charindex(',',a)-1) as '重1右',
left(b,charindex(',',b)-1) as '重2左',right(b,charindex(',',b)-1) as '重2右'
from @table
J. sql語句, 字元串分割做為查詢條件
SQL語句如下:
SELECT *
FROM A
WHERE CHARINDEX(ID,'2,3,4')>0
上述SQL語句在SQL Server中進行了測試。