34,590
社区成员
发帖
与我相关
我的任务
分享
tableA:
id keyword
1 foo
2 bar
3 qux
4 baz
...
tableB:
id keyword
1 foo
2 bar
3 bar
4 qux
5 qux
6 bar
7 foo
...
--存在与否的判断
CASE WHEN EXISTS(SELECT 1 FROM tableB B WHERE A.keyword = b.keyword) THEN 'Y' ELSE 'N' END
[/quote]
谢谢!--存在与否的判断
CASE WHEN EXISTS(SELECT 1 FROM tableB B WHERE A.keyword = b.keyword) THEN 'Y' ELSE 'N' END
select a.*,标记=case when isnull(b.keyword,'')<>'' then 'Y' else 'N' end
from tableA a
left join (select distinct keyword from tableB) b on a.keyword=b.keyword
select distinct
T1.CampaignId,
T1.SearchWord,
case when t2.KeyWord is not null
and t2.CampaignId IS not null
then 'Y'
else 'N'
end as ExistsOrNot,
OccurenceNumber
from @tblSumCampSearchWords as T1
left join @tblCampKeyWords as T2
on T1.SearchWord = T2.KeyWord
and T1.CampaignId = T2.CampaignId
这样是不对的。会有多判。 i.e,
--cross join:
t1.keyword t2.keyword t1.id t2.id
a a 1 1
a b 1 2
a c 1 3
b a 2 1
b b 2 2
b c 2 3
--left outer join:
t1.keyword t2.keyword t1.id t2.id
a a 1 1
null b 1 2
null c 1 3
null a 2 1
b b 2 2
null c 2 3
[/code]
不知我的分析对不?select a.*,标记=case when isnull(b.keyword,'')<>'' then 'Y' else 'N' end
from tableA a
left join tableB b on a.keyword=b.keyword