表1如下:
city
江蘇
湖北
上海
山西
南通
武漢
表2如下:
keyword
上海it培訓
黑馬匯上海教育學院
最好學校是it學校是什么學校
江蘇it教育
哪里學表演好
湖北武漢赫本彩妝美甲培訓學校介紹
想得到如下結果(根據表1提供的詞批量匹配出表2的資料)
keyword city
上海it培訓 上海
黑馬匯上海教育學院 上海
最好學校是it學校是什么學校 NULL
江蘇it教育 江蘇
哪里學表演好 NULL
湖北武漢赫本彩妝美甲培訓學校介紹 湖北武漢
uj5u.com熱心網友回復:
declare @tb1 table(city nvarchar(20))
declare @tb2 table(keyword nvarchar(200))
insert into @tb1 values('江蘇'),('湖北'),('上海'),('山西'),('南通'),('武漢')
insert into @tb2 values('上海it培訓'),('黑馬匯上海教育學院'),('最好學校是it學校是什么學校'),('江蘇it教育'),('哪里學表演好'),('湖北武漢赫本彩妝美甲培訓學校介紹')
select * from @tb2 a
outer apply (
select (
select ''+city
from @tb1
where charindex(city,keyword)>0
order by charindex(city,keyword)
for xml path('')
) as city
) b
uj5u.com熱心網友回復:
DECLARE @tb1 TABLE(city NVARCHAR(20));DECLARE @tb2 TABLE(keyword NVARCHAR(200));
INSERT INTO @tb1 VALUES('江蘇'), ('湖北'), ('上海'), ('山西'), ('南通'), ('武漢');
INSERT INTO @tb2
VALUES('上海it培訓'),
('黑馬匯上海教育學院'),
('最好學校是it學校是什么學校'),
('江蘇it教育'),
('哪里學表演好'),
('湖北武漢赫本彩妝美甲培訓學校介紹');
SELECT a.keyword, (SELECT TOP 1 a1.city FROM @tb1 a1 WHERE PATINDEX('%'+a1.city+'%', a.keyword)>0) city
FROM @tb2 a;
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/9783.html
標籤:基礎類
