如题 假设A 列 有 1,2 B 有1,2,3 那就是B包含A
假设 A 有1,2,3,4 B 有1,2,5,6 那就是互不包含
还有这积分没有了 可咋办 能力有限回答别人的也不能被采纳
------解决思路----------------------
以你的测试数据,结果如下
WITH groupB AS(
SELECT b2 FROM B GROUP BY b2
)
,AWithb2 AS(
SELECT * FROM A,groupB
)
,CTE AS(
SELECT
ISNULL(T1.b2,T2.b2)b2
,COUNT(T1.a1)COUNTA
,COUNT(T2.b1)COUNTB
FROM
AWithb2 T1
FULL JOIN B T2 ON T1.a1=T2.b1 AND T1.b2 = T2.b2
WHERE
T1.b2 IS NULL OR T2.b2 IS NULL
GROUP BY
ISNULL(T1.b2,T2.b2)
)
SELECT
b2
,CASE WHEN COUNTA=0 THEN '包含A' ELSE '不包含A'END[包不包含A]
FROM
CTE
/*
1 包含A
2 不包含A
*/