table 1 :id code
1 001
2 001,002
3 001,002,003
table 2:
code name
001 數學
002 體育
003 美術
要求結果
id name
1 數學
2 數學,體育
3 數學,體育,美術
--測試資料
with table1(id,code) as
(select
1,'001
'union
allselect
2,'001,002
'union
allselect
3,'001,002,003'),
table2(code,name) as(
select
'001
','數學
'union
allselect
'002
','體育
'union
allselect
'003
','美術')
--用charindex和for xml path實現批量替換的功能,適用於sql server 2005及以上版本
select table1.id,stuff
((
select',
'+table2.name from
table2
where
charindex(','
+table2.code+',
',',
'+table1.code+',
')>
0order
bytable2.code
for xml path(''
) ),
1,1,'') as
name
from table1
SQL匯出txt檔案欄位用逗號 ,隔開
最近客戶要匯出部分交易明細,格式如下的txt,通過查詢具體sql如下,可以用dbvisualizer或pl sql匯出。主要是sql拼接方法 匯出形如 04,832005 20141231 234915 23000,1 04,832027 20141231 235427 560 1 的txt檔案,具...
mysql處理以逗號隔開的字段內容
有乙個字段儲存了checkbox內容,比如職業目標選擇對於資料庫欄位otworkgoal,儲存了1,2,3,4內容 現在需要使用純mysql語句,將字段otworkgoal根據內容,進行翻譯成中文的內容。可使用find in set 函式 concat ws 函式實現。find in set 可參考...
mysql 拆分以逗號隔開的字段並應用在in查詢
利用substring index及笛卡爾積來迴圈拆分sql欄位 首先建立幾條資料 idvalue computer 5,ddd,eee phone 12,3333,11 pipe 234 假如我們需要查詢的字段in phone欄位的值 12,3333,11 我們可以用一下方法 準備示例資料 cre...