Почему SELECT * плохая практика? Разве это не означает, что код изменится, если вы добавили новый столбец, который вам нужен?
Я понимаю, что SELECT COUNT(*) - проблема производительности на некоторых БД, но что, если вы действительно хотели каждый столбец?
