Sí, el idioma siempre es un problema
. Si quieres escribir en portugués, por mi encantado, lo hablo un poco (tengo amigos de Rio de Janeiro
) y entiendo bastante bien el portugués escrito.
Lo siento pero sigo sin entender lo que estas buscando. El problema no es que no funcione por el CASE, el problema es que la consulta no está bien diseñada, dado que los CASE te puedo asegurar que funcionan muy bien.
¿ La tabla staff_tecnico la compartes entre varios clientes, verdad ?.
¿ Cuantos registros se supone que hay en staff_tecnico ?. Si solo hay uno, no entiendo la necesidad de usar la función de agregado
max, y si hay más de un registro, ¿ vas a devolver varios registros con el mismo valor en todos ?, ¿ seguro que queremos devolver tantos resultados como registros en staff_tecnico ?.
Es que no consigo comprender el
case when id_tecnico is null. ¿ Que se supone que queremos comparar aquí ?. ¿ El id_tecnico de cada uno de los registros en staff_tecnico ?, ¿ max(id_tecnico) ?.
Creo que si pones algunos ejemplos con lo que te puedes encontrar en la tabla y lo que quieres recuperar, sería más fácil de entender.
Saludos.