← Все вопросы
Что значит звёздочка в SELECT * и когда лучше писать столбцы вручную?
5
Видел запросы и со SELECT *, и со SELECT name, age. Звёздочка же удобнее — пишешь её и всё. Зачем тогда вообще перечислять столбцы руками? В чём разница?
1 ответ
8
✓ Принятый ответ — помог автору
* означает «все столбцы таблицы». То есть:
SELECT * FROM students; -- все столбцы
SELECT name, age FROM students; -- только имя и возраст
Звёздочка удобна, чтобы быстро посмотреть, что вообще лежит в таблице. Но в настоящих программах чаще перечисляют столбцы явно, и вот почему:
- Не тащишь лишнее. Если в таблице 20 столбцов, а тебе нужны 2 — зачем грузить остальные 18? Это медленнее.
- Понятнее код. Сразу видно, какие данные используются.
- Безопаснее. Если кто-то добавит новый столбец в таблицу, твой запрос с явными именами не сломается и не вытащит лишнее.
Итог: SELECT * — для быстрого «глянуть глазами», явные столбцы — для нормального кода.
Ваш ответ
Войдите, чтобы ответить на вопрос.