Obtener intervalo o rangos de números de otra tabla
Publicado por nfpinero (3 intervenciones) el 04/03/2014 11:39:49
Buenos días a todos,
Os describo la tabla de ejemplo que tengo y el problema.
La tabla de ejemplo seria una tabla simple con tres registros código, valor, activo. Mi necesidad surge a la hora de obtener la consulta con los intervalos (min y max), para cada registro código idéntico.
Para ser mas descriptivo si la tabla la relleno, con lo siguientes datos:
Cod | Valor | activo
1 | 1 | 1
1 | 2 | 1
1 | 3 | 1
1 | 4 | 0
1 | 5 | 0
1 | 6 | 1
1 | 7 | 1
Inicialmente utilizaba la siguiente consulta:
"SELECT cod, MIN(valor) AS min, MAX(valor) AS max, activo
FROM dbo.tabla_test
GROUP BY activo, cod"
El resultado de la consulta es:
cod | min | max | activo
1 | 4 | 5 | 0
1 | 1 | 7 | 1
Soy consciente de que la consulta no es la correcta ya que el resultado que yo busco es:
cod | min | max | activo
1 | 4 | 5 | 0
1 | 1 | 3 | 1
1 | 6 | 7 | 1
Os agradezco de antemano cualquier ayuda que me podáis ofrecer.
Gracias y un saludo.
Os describo la tabla de ejemplo que tengo y el problema.
La tabla de ejemplo seria una tabla simple con tres registros código, valor, activo. Mi necesidad surge a la hora de obtener la consulta con los intervalos (min y max), para cada registro código idéntico.
Para ser mas descriptivo si la tabla la relleno, con lo siguientes datos:
Cod | Valor | activo
1 | 1 | 1
1 | 2 | 1
1 | 3 | 1
1 | 4 | 0
1 | 5 | 0
1 | 6 | 1
1 | 7 | 1
Inicialmente utilizaba la siguiente consulta:
"SELECT cod, MIN(valor) AS min, MAX(valor) AS max, activo
FROM dbo.tabla_test
GROUP BY activo, cod"
El resultado de la consulta es:
cod | min | max | activo
1 | 4 | 5 | 0
1 | 1 | 7 | 1
Soy consciente de que la consulta no es la correcta ya que el resultado que yo busco es:
cod | min | max | activo
1 | 4 | 5 | 0
1 | 1 | 3 | 1
1 | 6 | 7 | 1
Os agradezco de antemano cualquier ayuda que me podáis ofrecer.
Gracias y un saludo.
Valora esta pregunta


0