我试图解决的问题是使用REPLACE函数来查看槽的值列表并进行所有各种替换,但挑战在于这在不同的桌子上。基本上,我正在寻找比做25-100个REPLACE函数更聪明的方法。SQL使用REPLACE函数搜索表变量并更新字段
这里是问题的简化版本: 变量表保存字符/字符串列表(随机长度和混合字符)我想稍后找到并替换。
DECLARE @ReplaceList TABLE (String VARCHAR(100))
INSERT INTO @ReplaceList (String)
VALUES ('AAA1 - '), ('AAB1 - '), ('A3 !'), ('BC4 - ')
String
AAA1 -
AAB1 -
A3 !
BC4 -
然后,我有一个表(职位)超过千行与需要所有这些替换/删除描述。所需
Title
AAA1 - Job 1
AAA1 - Job 2
A3 ! Job 4
BC4 - Job 5
最终的结果是:
Title
Job 1
Job 2
Job 4
Job 5
粗糙的想法我曾经为SQL代码脱节将类似于
SELECT REPLACE(Jobs.Title,@ReplaceList.String,'')
FROM Jobs
我知道这个代码是没有在附近什么实际上它可能会工作,因为它可能需要一个子查询或其他东西,但我认为它表达了使用来自变量表的数据作为在不同表的每个字段中要替换的主列表的想法。
也许交叉应用将有助于... –
你想删除'Job'左边的字符串? ...你正在使用哪个数据库? – scaisEdge
我删除了冲突的DBMS标签。请为您实际使用的DBMS添加一个。 –