C'est une idée que j'ai entendue répéter dans une poignée d'endroits. Certains reconnaissent plus ou moins qu’une fois que l’on essaie de résoudre un problème uniquement en SQL dépasse un certain niveau de complexité, vous devriez effectivement le traiter en code.
La logique derrière l’idée est que, dans la grande majorité des cas, le moteur de base de données sera plus efficace pour trouver le moyen le plus efficace d’accomplir votre tâche que vous ne le pourriez en code. Surtout lorsqu'il s'agit de subordonner les résultats aux résultats des opérations effectuées sur les données. Sans doute avec les moteurs modernes, JIT'ing + la mise en cache de la version compilée de votre requête aurait du sens en surface.
La question est de savoir si l'exploitation de votre moteur de base de données de cette manière est intrinsèquement une mauvaise pratique de conception (et pourquoi). Les lignes deviennent plus floues quand toute la logique existe dans la base de données et que vous la frappez simplement via un ORM.