Оно ненужная прокладка. Чтобы хорошо уметь в ORM, надо понимать SQL и СУБД, а когда их понимаешь, ORM не нужен, ИМХО
Недавний пример:
заказчик (он же CTO) попросил писать в новом микросервисе без ORM - окей, написали, но функция findById() если туда не передается ID выдает первую попавшуюся запись из базы. мне даже страшно проверять что делает deleteById() если туда не передать id
ORM с дикими вложенными джойнами конечно это слишком, но от глупых ошибок она защищает (эскейпинг данных, базовая валидация)