SQL - Consulta SQl con where

   
Vista:

Consulta SQl con where

Publicado por Miguel Santillan (3 intervenciones) el 02/11/2008 02:45:33
Preciso hacer una consulta SQL la cual pueda tner en cuenta en la claúsula where que tome o no el valor del filtro que pido.

Por ejemplo.
Esto funciona bien
Select * from cliente where cliente.id = 1

Ahora yo quiero que despues de la clausula where pueda pedir por un cliente.id o todos.

He probado con un case, pero cuando lo hago sobre campos char me da error la consulta.

Saludos.
Miguel
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Consulta SQl con where

Publicado por Leopoldo Taylhardat (89 intervenciones) el 03/11/2008 13:12:15
Consulta por rango...
para uno...
where cliente.id >= 1 and cliente.id <= 1
Para todos...
cliente.id >= 1 and cliente.id <= 10000000
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta SQl con where

Publicado por pacopaz (143 intervenciones) el 03/11/2008 17:10:43
O puedes hacerlo de la forma en la que ibas, por que no está mal usar 'case'. Puede suceder algo como esto:
Supestos:
@v_idcliente es la variable donde traes el id del cliente que desees conslutar. Nulo si quieres enlistar todos. Es de tipo entero.

select * from cliente
where cliente.id = case
when @ v_idcliente is null then cliente.id
else @ v_idcliente
end

Espero que te sirva.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta SQl con where

Publicado por jose camilo (19 intervenciones) el 05/11/2008 13:46:43
donde tiene esto en un proedimiento incluido una vista remota o en tu programa
y en k programas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Consulta SQl con where

Publicado por Santillan (3 intervenciones) el 05/11/2008 14:44:24
Lo puedo hacer como una vista o correrlo directamente desde Crystal Report.

Te comento:
Yo trabajo con Clarion, base de datos PostgreSql y los reportes los estoy armando con Crystal Report.
Si armo una vista desde Clarion en el Servidor SQL o sy armo la consulta SQL desde Crystal es lo mismo. Lo que quiero hacer es pasar varios parámetros y en el caso que estos parámetros tengan valores, validarlos, en caso contrario no hacer nada.

Saludos.
Miguel
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar