consulta que involucra inner join minimo y subconsulta
Publicado por mar4612 (2 intervenciones) el 16/03/2012 15:44:38
Hola a todos: tengo una consulta muy dificil y no logro resolverla paso a contarles:
tengo dos tablas
TABLA_1
CAMPO_A.......CAMPO_B
A ...................1000
B....................2000
C....................3000
C....................4000
C ..................5000
D....................6000
E....................7000
haciendo una consulta de la TABLA_1obtengo (aclaro que esta es una consulta)
CAMPO_A ................. CANTIDAD
A.....................................1
B.....................................1
C....................................3
D....................................1
E.....................................1
TABLA_2
CAMPO_A........CAMPO_B.......CAMPO_C
1000.................1........................10
2000.................2........................11
3000.................3........................12
4000.................3........................13
5000.................3........................14
6000.................4........................10
7000.................5........................20
el resultado que quiero obtener es el siguiente:
CAMPO_A ............CAMPO_B..............CAMPO_C
(TABLA_1)............(TABLA_2).............(TABLA_2)
C.........................3...................................12...... -->EL VALOR MINIMO
solo aquellas filas cuyas cantidades sean mayor que 1. Tengo esta consulta pero no obtengo los resultados deseados:
select t1.campo_A, t2.campo_A, t2.campo_B from tabla_1 t1 inner join tabla_2 t2 on t1.campo_A = t2.campo_A where (t2.campo_C=(select min(t2.campo_C) from tabla_2 t3 where t3.campo_A=t2.campo_A)) group by t1.campo_A, t2.campo_A, t3.campo_B having count(t1.campo_A)>1
Espero que se entienda el problema y me puedan ayudar. Gracias de antemano..
tengo dos tablas
TABLA_1
CAMPO_A.......CAMPO_B
A ...................1000
B....................2000
C....................3000
C....................4000
C ..................5000
D....................6000
E....................7000
haciendo una consulta de la TABLA_1obtengo (aclaro que esta es una consulta)
CAMPO_A ................. CANTIDAD
A.....................................1
B.....................................1
C....................................3
D....................................1
E.....................................1
TABLA_2
CAMPO_A........CAMPO_B.......CAMPO_C
1000.................1........................10
2000.................2........................11
3000.................3........................12
4000.................3........................13
5000.................3........................14
6000.................4........................10
7000.................5........................20
el resultado que quiero obtener es el siguiente:
CAMPO_A ............CAMPO_B..............CAMPO_C
(TABLA_1)............(TABLA_2).............(TABLA_2)
C.........................3...................................12...... -->EL VALOR MINIMO
solo aquellas filas cuyas cantidades sean mayor que 1. Tengo esta consulta pero no obtengo los resultados deseados:
select t1.campo_A, t2.campo_A, t2.campo_B from tabla_1 t1 inner join tabla_2 t2 on t1.campo_A = t2.campo_A where (t2.campo_C=(select min(t2.campo_C) from tabla_2 t3 where t3.campo_A=t2.campo_A)) group by t1.campo_A, t2.campo_A, t3.campo_B having count(t1.campo_A)>1
Espero que se entienda el problema y me puedan ayudar. Gracias de antemano..
Valora esta pregunta
0