Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MS SQL Server
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-02-2010
Avatar de juanelo
juanelo juanelo is offline
Miembro
 
Registrado: sep 2007
Posts: 1.083
Poder: 18
juanelo Va por buen camino
Sentencia CASE en SQL Server

Que tal a todos,
Pues sigo con mi peregrinar para migrar una aplicacion a SQL Server, y me topo ahora que la sentencia CASE de SQL Server (y creo que la de Firebird tambien) no soportan expresiones boleanas.
En firebird tengo la siguiente sentencia:
Código SQL [-]
SELECT IIF (TABLA.TIPO_MOV >= 51, -1, 1) AS CANT_OP FROM TABLA
Y lo mas logico es traducirlo en Sql Server asi:
Código SQL [-]
Select CASE TABLA.TIPO_MOV WHEN >=51 THEN -1 ELSE 1 END AS CANT_OP FROM TABLA
Pues que creen? que no es posible, ahora como le puedo hacer para que esta sentencia pueda evaluar el ">=51" ?
Cualquier ayuda o direccion es bien recibida, y como siempre, les doy las gracias por tomarse el tiempo de leer este post.
Saludos.
__________________
Ya tengo Firma!

Última edición por juanelo fecha: 02-02-2010 a las 06:03:40.
Responder Con Cita
  #2  
Antiguo 02-02-2010
Avatar de fjcg02
[fjcg02] fjcg02 is offline
Miembro Premium
 
Registrado: dic 2003
Ubicación: Zamudio
Posts: 1.410
Poder: 22
fjcg02 Va camino a la fama
Prueba con

Código SQL [-]
Select CASE WHEN TABLA.TIPO_MOV >=51 THEN -1 ELSE 1 END AS CANT_OP FROM TABLA

Saludos
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino -
Responder Con Cita
  #3  
Antiguo 02-02-2010
Avatar de juanelo
juanelo juanelo is offline
Miembro
 
Registrado: sep 2007
Posts: 1.083
Poder: 18
juanelo Va por buen camino
Muchas gracias fjcg02 por tu respuesta, pero creeme que la probe asi y tampoco, en resumidas cuentas no soporta expresiones boleanas
¿Alguien sabe como poder darle la vuelta a esto?
Gracias
__________________
Ya tengo Firma!
Responder Con Cita
  #4  
Antiguo 02-02-2010
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
pues lo que puso fjcg02 a mi me funciona perfectamente...

¿por qué dices que no te funciona a tí?
__________________

Responder Con Cita
  #5  
Antiguo 02-02-2010
Avatar de juanelo
juanelo juanelo is offline
Miembro
 
Registrado: sep 2007
Posts: 1.083
Poder: 18
juanelo Va por buen camino
Cita:
Empezado por ContraVeneno Ver Mensaje
pues lo que puso fjcg02 a mi me funciona perfectamente...

¿por qué dices que no te funciona a tí?
ContraVeneno,
No se si sea por la version de SQL que uso, la cual es SQL 2005 Express Edition pero me marca el siguiente error:
Código SQL [-]
Msg 102, Level 15, State 1, Line 1
Incorrect syntax near '>'.
Gracias.
__________________
Ya tengo Firma!

Última edición por juanelo fecha: 02-02-2010 a las 16:29:29.
Responder Con Cita
  #6  
Antiguo 03-02-2010
sinalocarlos sinalocarlos is offline
Miembro
 
Registrado: sep 2006
Posts: 152
Poder: 18
sinalocarlos Va por buen camino
la sentencia de fjcg02 funciona correctamente, podrias darnos un ejemplo de como tienes tu consulta ya con esta modificacion?
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Case else intercubo Varios 9 19-02-2008 23:03:56
Es posible un Case anidado en Sentencia SQL ? gluglu SQL 3 25-09-2007 20:43:15
sentencia case... patorecalde Oracle 2 07-08-2007 20:55:57
CASE o IFF en SQL dark_c SQL 3 13-01-2007 20:07:33


La franja horaria es GMT +2. Ahora son las 15:19:33.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi