简体   繁体   中英

Select values from subquery without duplicates sql

I have table, where type A has two values and type B has two values

A    |   B
-----|--------
val1 | val1
val2 | val2

I do subquery but I get dubolicate values,it looks like this

A    |   B
-----|--------
val1 | val1
val1 | val2
val2 | val1
val2 | val2

My query:

SELECT A, B
FROM 
(SELECT DISTINCT title as A
FROM TABLE1 
INNER JOIN TABLE2 ON TABLE1_TABLE2_ID = TABLE2_ID
INNER JOIN TABLE3 ON TABLE1_TABLE3_ID = TABLE3_ID
WHERE TABLE_TABLE3_ID = 2008 AND TABLE_TYP LIKE 'A' AND TABLE1_AKTIV = 'Y')
LEFT JOIN
(SELECT DISTINCT title as B
FROM TABLE1 
INNER JOIN TABLE2 ON TABLE1_TABLE2_ID = TABLE2_ID
INNER JOIN TABLE3 ON TABLE1_TABLE3_ID = TABLE3_ID
WHERE TABLE_TABLE3_ID = 2008 AND TABLE_TYP LIKE 'B' AND TABLE1_AKTIV = 'Y')
ON 1 = 1

Have you any Ideas how I can do it without duplicates?

The problem is ON 1=1 . This will get you all combinations. you need to change query with proper reference column some thing like ON A.id=B.id .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM