Dificultades con consultas
Comento un poco mi situación.
Me han entregado varios ejercicios para resolver y he podido con casi todos ellos, salvo los dos a continuación.
El primer pide que obtenga las IDs de las sucursal en parejas (ej: idSucursal1, idSucursal2) de aquellas sucursales que posean los mismos títulos, sin tomar en cuenta la cantidad correspondiente a cada título en cada sucursal.
En los resultados no deben aparecer parejas duplicadas o simétricas.
La tabla que tengo a disposición es inventario, con los campos idSucursal, idTitulo, cantidad
Hasta ahora he hecho:
select idSucursal, count(idTitulo) from inventario group by idSucursal;
+-----+------+
| ids | cant |
+-----+------+
| 1 | 365 |
| 2 | 607 |
| 3 | 274 |
| 4 | 274 |
+-----+------+
Al hacer eso sé la cantidad de titulos en cada sucursal lo que me permite reducir las IDs de sucursales a solo aquellas que tienen una cantidad igual de títulos.
En este punto ya no sabría bien como seguir, aun así continué de esta manera:
select distinct t1.ids as ids1, t2.ids as ids2 from
(select idSucursal as ids, count(idTitulo) as cant from inventario group by idSucursal)t1
join
(select idSucursal as ids, count(idTitulo) as cant from inventario group by idSucursal)t2
on t1.cant=t2.cant and t1.ids<>t2.ids
+------+------+
| ids1 | ids2 |
+------+------+
| 3 | 4 |
| 4 | 3 |
+------+------+
Realice un join para conseguir las "parejas" de sucursales que tuviesen la misma cantidad de títulos pero no se como ignorar la simetria (3,4 | 4,3)
Esto me permite obtener combinaciones de IDs de sucursales cuyas cantidades de titulos son iguales entre si, por eso la consulta solo devuelve la convinacion 3, 4 y su simetrica.
Hasta este punto he llegado, no he podido quitar los registros que contienen simetrias ni tampoco tengo una idea clara de como hacer para comparar todos los titulos de una sucursal con otra. Se que a través de las IdTitulo, pero ¿Cómo?