another_dream
@another_dream
Backend-разработчик, Laravel/ZF2/Yii2

Как лучше проверить наличие записи в БД?

Есть баз данных. Таблица users. Есть регистрация. Каким наиболее быстрым и простым способом можно проверить наличие e-mail или username который ввели при регистрации, на наличие оного в базе данных?
Достаточно ли просто сделать выборку по введенному e-mail/username, посчитать кол-во полученных строк и если оно не равно 0, то завершать работу функции?
  • Вопрос задан
  • 11003 просмотра
Решения вопроса 3
@Anarchist
SELECT true FROM users WHERE name = ? OR email = ? LIMIT 1;
Ответ написан
Комментировать
demimurych
@demimurych
Сделать составной уникальный индекс по обоим полям. И далее простым запросом по этим двум полям. Не нужно даже делать их выборку, достаточно сделать обычный count
Ответ написан
Да, но добавьте конструкцию LIMIT 1, чтобы не ворошить всю базу. Также желательно на эти поля повесить ключи.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы