17/08/2010, 08:35
|
| | Fecha de Ingreso: agosto-2010
Mensajes: 29
Antigüedad: 14 años, 5 meses Puntos: 0 | |
Respuesta: Hacer una consulta Bueno mirando probé a hacer el siguiente case pero no funciona, nose si no se puede o esta mal la sintaxis o que:
var sql = "SELECT CASE stdUsuarios.nombre, stdUsuarios.apellidos WHEN apellidos < '" + ape_guardia + "' THEN TOP apellidos"
+ " WHEN apellidos = '" + ape_guardia + "' THEN nombre > '" + nom_guardia + "' ELSE apellidos > '" + ape_guardia + "' END"
+ " FROM (stdUsuarios_stdRoles INNER JOIN stdUsuarios ON stdUsuarios_usuario = stdUsuarios.id)"
+ " INNER JOIN stdAnotacionesCalendario ON stdUsuarios.id = stdUsuarios_id"
+ " WHERE stdRoles_rol = '" + id_rol + "' AND (excepcion = 0 OR horas != 0)"
+ " AND DATEPART(dd, fecha)=" + date.getDate()
+ " AND DATEPART(mm, fecha)=" + (date.getMonth() + 1)
+ " AND DATEPART(yy, fecha)=" + date.getFullYear()
+ " order by apellidos, nombre";
lo que pretendo con el case es:
- si los apellidos son menores que el de guardia que vuelva al 1º alfabeticamente
- si el apellidos es igual al de guardia, que obtenga el de mayor nombre
- sino, (es decir q hay alguno mayor) que saque ese
que está mal??
Saludos |