È un'idea che ho sentito ripetere in una manciata di posti. Alcuni riconoscono più o meno che, una volta che si tenta di risolvere un problema puramente in SQL, si supera un certo livello di complessità, si dovrebbe infatti gestirlo nel codice.
La logica dietro l'idea è che per la maggior parte dei casi, il motore di database svolgerà un lavoro migliore nel trovare il modo più efficiente di completare il tuo compito rispetto a quello che potresti fare nel codice. Soprattutto quando si tratta di cose come rendere i risultati condizionali sulle operazioni eseguite sui dati. Probabilmente con i motori moderni in modo efficace JIT'ing + memorizzando nella cache la versione compilata della tua query avrebbe senso sulla superficie.
La domanda è se sfruttare il tuo motore di database in questo modo è una pratica di progettazione intrinsecamente negativa (e perché). Le linee si offuscano ulteriormente quando tutta la logica esiste all'interno del database e la stai solo colpendo tramite un ORM.