Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Where condicional

Estas en el tema de Where condicional en el foro de SQL Server en Foros del Web. Hola Llevo dias tratando de resolver este problema... resulta que tengo un reporte donde el usuario puede elegir un pdv o una ciudad (todos los ...
  #1 (permalink)  
Antiguo 27/03/2009, 10:43
Avatar de sobenavi  
Fecha de Ingreso: febrero-2005
Mensajes: 7
Antigüedad: 19 años, 9 meses
Puntos: 0
Where condicional

Hola

Llevo dias tratando de resolver este problema... resulta que tengo un reporte donde el usuario puede elegir un pdv o una ciudad (todos los pdv de esa ciudad).

El codigo del pdv es algo como 1A3 donde 1 es el codigo de la ciudad, he intentado hacer el query con CASE y LIKE asi:


SELECT *
FROM puntos_venta
WHERE cod_alm LIKE CASE LEN((arroba)pdv)
WHEN 0 then (arroba)ciudad+%
else (arroba)pdv
END


Pero esta consulta es muy lenta por usar LIKE, hay otra forma de hacerla ?.. un condicional en el WHERE un IF? o algo asi?
  #2 (permalink)  
Antiguo 27/03/2009, 16:34
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 19 años, 3 meses
Puntos: 39
Respuesta: Where condicional

Asi has probado?
Código sql:
Ver original
  1. SELECT *
  2. FROM puntos_venta
  3. WHERE cod_alm LIKE @ciudad+'%'
  4. OR cod_alm LIKE @pdv+'%'
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:30.