На одном собеседовании спросили: как проверить строчку на существование по полю id (индекс, но оно не уникальное)
Первое что приходит в голову:
SELECT count(id) FROM table WHERE id=:id
Но есть более эффективное решение. А как проверяете вы?
Как проверить строчку на существование (SQL)
- Антон Смирнов
- Сообщения: 284
- Зарегистрирован: 2011.07.08, 10:37
- Контактная информация:
Re: Как проверить строчку на существование (SQL)
думаю
SELECT id
FROM table
WHERE id=:id
LIMIT 1
быстрее будет
П.С. замерил коня в вакууме, но мой вариант в 1.5 раза быстрее
SELECT id
FROM table
WHERE id=:id
LIMIT 1
быстрее будет
П.С. замерил коня в вакууме, но мой вариант в 1.5 раза быстрее
- Антон Смирнов
- Сообщения: 284
- Зарегистрирован: 2011.07.08, 10:37
- Контактная информация:
Re: Как проверить строчку на существование (SQL)
Вариант плох тем, что значение поля id будет передаваться постоянно от MySQL в PHP, а если, скажем, это поле VARCHAR 1000 ?
Самый лучший вариант, по идее, SELECT 1 FROM table WHERE id=:id LIMIT 1
Самый лучший вариант, по идее, SELECT 1 FROM table WHERE id=:id LIMIT 1