Я всегда проповедовал моим разработчикам, что SELECT *
является злым, и его следует избегать как чуму.
Есть ли случаи, когда это может быть оправдано?
Я не говорю о COUNT(*)
, который может определить большинство оптимизаторов.
Edit
Я говорю о производственном коде.
И один замечательный пример, который я видел в этой плохой практике, - это традиционное приложение asp, которое использовало SELECT *
в хранимой процедуре и использовало ADO
для циклического преобразования возвращаемых записей, но получило столбцы по индексу. Вы можете себе представить, что произошло, когда новое поле было добавлено где-то, кроме конца списка полей.