![]() |
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: Y lo mas logico es traducirlo en Sql Server asi: 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. |
Prueba con
Saludos |
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 |
pues lo que puso fjcg02 a mi me funciona perfectamente...
¿por qué dices que no te funciona a tí? |
Cita:
No se si sea por la version de SQL que uso, la cual es SQL 2005 Express Edition pero me marca el siguiente error: Gracias. |
la sentencia de fjcg02 funciona correctamente, podrias darnos un ejemplo de como tienes tu consulta ya con esta modificacion?
|
Cita:
Y manda el mesaje que ya puse: "Msg 102, Level 15, State 1, Line 1 Incorrect syntax near '>'." PD: La sentencia como la mando fcjg02 ya la habia probado, y como menciono desde el pricipio me da error con cualquier expresion boleana. Gracias por su respuesta. |
yo lo probe en SQL server 2000 y 2008 (enterprise) y si funciona :confused::confused::confused:
¿será alguna práctica acostumbrada de microsoft de que sus cosas "gratis" están limitadas? :confused: |
mas raro, ya lo prove en SQL 2000 dev edition, sql 2005 standar edition y en 2005 express y en todos me funciona, aqui la imagen en 2005 express:
![]() Alguien se trajo una ouija? |
Cita:
Pues ahi te va lo peor, ya lo probe en SQL server 2005 (no la gratuita) de la empresa en cuestion y nada, la cosa sigue igual, en mi caso yo uso la express edition para desarrollo unicamente. Como dicen por ahi, MS es como las mujeres, no hay que tratar de entenderlo sino hay que aprender a vivir con el. :o |
Hola,
pon la definición de la tabla, por favor. Saludos |
Cita:
PD: Estoy confirmando una sospecha que tengo y en caso de ser cierta les informo. Gracias |
Ya esta!, pues resulta que son los driver dbexpress para firebird y SQL (tambien para FB pasaba!) que adquiri hace una año y que son los que uso en mis aplicaciones. Los actualice y listo!.
Yo siempre dije que MS no es "tan malo" :rolleyes: Muchas gracias a todos en verdad. |
Brillante , Brillante , Brillante. ! perfecto SINALOCARLOS !.
No sabes como me ayudaste con este ejemplo. estuve mas de 2 días buscando en Internet esta solución hasta que di con ella Gracias a ti. a mi tampoco me daba ya que lo hacia de la siguiente Forma: CASE mov>1 WHEN -1 THEN .... ELSE ......... y esa es la forma que se usa solo para IGUALDADES es decir CASE mov WHEN THEN ..... Pero cuando se hacen comparaciones es de la forma por ti explicada (las 2 instrucciones juntas) CASE WHEN mov>1 THEN ..... ELSE ......... Así que muchas gracias nuevamente, pues no daba con la segunda forma. |
La franja horaria es GMT +2. Ahora son las 04:15:00. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi