Depende de lo difícil que quieras que sea. Además, soy un poco cauteloso de darle la respuesta porque la mayoría de los problemas de SQL tienen múltiples formas aceptables de hacer las cosas y también hay formas de resolver problemas de SQL de manera descuidada que causarán otros problemas. La persona que "califica" la respuesta definitivamente necesita poder resolverla por sí misma.
Dicho esto, aquí hay algunos que se me ocurrieron en la parte superior de mi cabeza.
Nivel extremadamente fácil:
dada una tabla de empleados con las columnas EmpID, FirstName, Lastname, HireDate y TerminationDate:
escriba una consulta para devolver a todos los empleados que aún trabajan para la empresa con apellidos que comienzan con "Smith" ordenados por apellido y luego nombre.
Nivel fácil
Dada la tabla de empleados anterior, más una nueva tabla "Revisiones anuales" con las columnas EmpID y ReviewDate:
escriba una consulta para devolver a todos los empleados que nunca tuvieron una revisión ordenada por HireDate.
Nivel medio
Teniendo en cuenta la tabla de empleados anterior, ¿escribe una consulta para calcular la diferencia (en días) entre el empleado más y menos ocupado que aún trabaja para la empresa?
Nivel difícil
Dada la tabla de empleados anterior, escriba una consulta para calcular el período más largo (en días) que la compañía ha pasado sin contratar o despedir a nadie.
Nivel
más difícil Nuevamente, utilizando las mismas tablas, escriba una consulta que devuelva a cada empleado y para cada fila / empleado incluya la mayor cantidad de empleados que trabajaron para la compañía en cualquier momento durante su mandato y la primera fecha en que se alcanzó el máximo. Puntos extra por no usar cursores.