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

Hola, tengo otra dudilla sobre la consulta q pretendo hacer.

Ya cree la tabla con el usuario de guardia, gracias a ella obtengo el nombre y apellidos del ultimo usuario que estuvo de guardia.

Ahora pa conseguir sacar el siguiente en hacer la guardia querria saber como puedo poner dentro del SELECT un case o algo así para que si el apellido es > que la variable apellido_guardia devuelva el primero (estan por orden alfabetico) pero si el apellido es igual a apellido_guardia me devuelva el que tenga mayor nombre y si no hay yá mas apellidos mayores q el de guardia pues entonces que vualva el primero de la lista (el apellido q alfabeticamente es mas pequeño)

mi select es el de antes:

var sql = "SELECT 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()
+ " order by apellidos";

pero tengo las dos variables nuevas a comparar:

var nom_guardia = rs.Fields(0).Value;
var ape_guardia = rs.Fields(1).Value;

Donde y como puedo añadirle a ese SELECT las nuevas comparaciones??

Muchas gracias