Estoy tratando de escribir una consulta simple en sqlite con una auto unión. Quiero todos los pares de ID de los productos que tienen el mismo costo, pero quiero pares únicos (es decir, no enlistar el mismo par dos veces, incluso en diferente orden). Esto es lo que tengo:Seleccionar pares únicos en la unión automática
SELECT b1.Id, b2.Id
FROM Basic AS b1
LEFT JOIN Basic AS b2
ON b1.cost = b2.cost
WHERE b1.Id != b2.Id
AND b1.Cost = 5;
por lo que obtener algo así como
23 | 101
23 | 205
24 | 103
101 | 23 <-- Duplicate!
He probado diferentes combinaciones de distintos y GROUP BY, pero todavía conseguir pares dupicate:
I 've intentado cosas como
SELECT DISTINCT bp1.Id, bp2.Id ...
& ... = 5 GROUP BY bp1.Id, bp2.Id;
¿Cómo puedo deshacerme de los pares duplicados? ¿Algunas ideas?
¡Agradeceré su ayuda!
Esto no funciona si hay más de 1 juego de identificadores que satisfacen los criterios. –