Это можно сделать следующим образом
order by CASE :orderBy
WHEN 'pato_id' THEN PATO.id
WHEN 'last_update_dt' THEN PATO.last_update_dt
END desc
, и вы можете передать "pato_id" или "last_update_dt" в функцию setString следующим образом
q.setString("orderBy", "last_update_dt");
or
q.setString("orderBy", "pato_id");
Это работает с MS SQL Server, не уверен насчет других.