Ver Mensaje Individual
  #13 (permalink)  
Antiguo 18/08/2010, 01:19
k_rol9
 
Fecha de Ingreso: agosto-2010
Mensajes: 29
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Hacer una consulta

Gracias por la respuesta, así funciona bien mientras exista una persona en la lista por encima del de guardia, pero cuando el de guardia es el último no me devuelve nada ( y yo prentedo q vuelva a empezar por el primero de la lista), por ese motivo era por el que intentaba hacer un case o algo asi.

También probé esto:

var sql = "SELECT TOP 1 stdUsuarios.nombre, stdUsuarios.apellidos"
+ " 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()
+ " AND (apellidos+nombre > '" + ape_guardia+nom_guardia + "' OR(apellidos+nombre > '" + ape_guardia+nom_guardia + "') = NULL)"
+ " order by apellidos, nombre";

No se pretendia que me sacara valor cuando hay un valor mayor que el de guardia o para el caso de q no exista salga el primero, pero lo que he puesto no funciona, (tbm he probado alguna otra sintaxis q me dio error).
Sabeis como podria ser???

Muchas gracias por vuestra ayuda.