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

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

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

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

Войти через центр авторизации
Похожие вопросы