目录
- 示例-查询出多个字典码对应的内容
- 示例-替换多个字典码对应的内容
- 说明
- CHARINDEX
- FOR XML PATH
 
 
示例-查询出多个字典码对应的内容
建立表格:学生-学习科目表student_study
 注意:科目kemu列内容是字典码,需要更换成对应内容。
 
 建立表格:编号-学科对应表格xueke
 注意:这张表是字典码编号和科目xueke的对应关系表。
 
查询结果:
 SQL代码:
select a.kemu,stuff((select ','+b.xueke from  xueke  bwhere charindex(','+b.bianhao+',',','+a.kemu+',')>0 for xml path('')),1,1,'') as kemus 
from student_study a
示例-替换多个字典码对应的内容
更新结果:

 表里科目列字典项数据已经替换成对应内容:
 
 SQL代码:
UPDATE   a  SET a.kemu=stuff((select ','+b.xueke from  xueke  bwhere charindex(','+b.bianhao+',',','+a.kemu+',')>0 for xml path('')),1,1,'')    FROM  student_study a where   CHARINDEX(',',a.kemu)>0 
说明
CHARINDEX
通过CHARINDEX如果能够找到对应的字符串,则返回该字符串位置,否则返回0。
CHARINDEX ( expressionToFind , expressionToSearch [, start_location ] )
expressionToFind :目标字符串,就是想要找到的字符串,最大长度为8000 。
expressionToSearch :用于被查找的字符串。
start_location:开始查找的位置,为空时默认从第一位开始查找。
FOR XML PATH
FOR XML PATH ,其实它就是将查询结果集以XML形式展现,将多行的结果,展示在同一行。