Ver Mensaje Individual
  #3 (permalink)  
Antiguo 19/05/2011, 08:11
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 4 meses
Puntos: 447
Respuesta: Duda con query

Hola degauss:

Al igual que Inicia, no me quedó muy claro que es lo que necesitas. Por un lado en tu post hablas de rangos de fechas, pero en ningún lado aparece fecha alguna. T tabla sólo contiene valores numéricos de punto flotante, que es muy diferente a un campo fecha.

Ahora bien, dices que no puedes ocupar BETWEEN, y yo digo que esa es la solución, lo que pasa es que no has dado con la manera en que tienes que utilizar este operador. Veamos si esto te sirve:

Código SQL:
Ver original
  1. DECLARE @TuTabla TABLE (HOLEID VARCHAR(10), DESDE FLOAT, HASTA FLOAT)
  2. INSERT INTO @TuTabla VALUES ('DDD-2X5', 0, 1.5)
  3. INSERT INTO @TuTabla VALUES ('DDD-2X5', 1.5, 3)
  4. INSERT INTO @TuTabla VALUES ('DDD-2X5', 3, 4.5)
  5. INSERT INTO @TuTabla VALUES ('DDD-2X5', 4.5, 6)
  6. INSERT INTO @TuTabla VALUES ('DDD-2X5', 6, 7.5)
  7. INSERT INTO @TuTabla VALUES ('DDD-2X5', 7.5, 9)
  8. INSERT INTO @TuTabla VALUES ('DDD-2X5', 9, 10.5)
  9. INSERT INTO @TuTabla VALUES ('DDD-2X5', 10.5, 12)
  10. INSERT INTO @TuTabla VALUES ('DDD-2X5', 12, 13.5)
  11.  
  12. SELECT * FROM @TuTabla WHERE
  13. 1 BETWEEN DESDE AND HASTA
  14. OR 4 BETWEEN DESDE AND HASTA
  15. OR DESDE BETWEEN 1 AND 4
  16. OR HASTA BETWEEN 1 AND 4

Observa en primer lugar que re-nombré los campos FROM y TO, ya que estas son PALABRAS RESERVADAS por SQL Server y por lo tanto NO DEBEN SER UTILIZADAS PARA IDENTIFICAR ALGÚN CAMPO O TABLA. Si insiste en utilizar estas palabras como identificadores siempre tendrás que ponerlas entre corchetes [].

Dale un vistazo a ver si te sirve el código.

Saludos
Leo.