27,580
社区成员
发帖
与我相关
我的任务
分享
code ss
0001 5
0002 9
0003 10
0004 11
pakcode code dd
A01 0002 11
A02 0003 22
A02 0003 55
A05 0004 66
A06 0005 77
code sale
0001 5
0002 9
0003 10
0004 11
A01 5
A02 10
A05 6
A06 9
code sale
A01 5
A05 6
--测试数据
IF NOT OBJECT_ID(N'Tempdb..#T1') IS NULL
DROP TABLE #T1
IF NOT OBJECT_ID(N'Tempdb..#T2') IS NULL
DROP TABLE #T2
IF NOT OBJECT_ID(N'Tempdb..#T3') IS NULL
DROP TABLE #T3
GO
CREATE TABLE #T1
(
Code VARCHAR(20),
ss VARCHAR(20)
)
INSERT #T1
SELECT '0001','5'UNION ALL
SELECT '0002','9'UNION ALL
SELECT '0003','10'UNION ALL
SELECT '0004','11'
CREATE TABLE #T2
(
pakcode VARCHAR(20),
code VARCHAR(20),
dd VARCHAR(20)
)
INSERT #T2
SELECT 'A01','0002','11'UNION ALL
SELECT 'A02','0003','22'UNION ALL
SELECT 'A02','0003','55'UNION ALL
SELECT 'A05','0004','66'UNION ALL
SELECT 'A06','0005','77'
CREATE TABLE #T3
(
Code VARCHAR(20),
sale VARCHAR(20)
)
INSERT #T3
SELECT '0001','5' UNION ALL
SELECT '0002','9' UNION ALL
SELECT '0003','10' UNION ALL
SELECT '0004','11' UNION ALL
SELECT 'A01','5' UNION ALL
SELECT 'A02','10' UNION ALL
SELECT 'A05','6' UNION ALL
SELECT 'A06','9'
GO
--测试数据结束
--SELECT * FROM #T1 AS t1
--SELECT * FROM #T2 AS t2
--SELECT * FROM #T3 AS t3;
WITH new_t2 AS (
SELECT t.pakcode,t.code
FROM #T2 AS t
WHERE NOT EXISTS (
SELECT t2.code
FROM #T2 AS t2
WHERE t2.code = t.code
GROUP BY
t2.code
HAVING COUNT(*) > 1
)
)
SELECT t2.pakcode,
t3.sale
FROM #T1 AS t
JOIN new_t2 AS t2
ON t.Code = t2.code
JOIN #T3 AS t3
ON t2.pakcode = t3.Code