Существуют ли указанные id в таблице?

Темы, не касающиеся фреймворка, но относящиеся к программированию в целом.
Ответить
t3mnikov
Сообщения: 11
Зарегистрирован: 2017.02.03, 10:18

Существуют ли указанные id в таблице?

Сообщение t3mnikov »

Всем привет!
Например, есть таблица fruits:

Код: Выделить всё

+----+--------+
| id | name   |
+----+--------+
|  1 | apple  |
|  2 | pear   |
|  3 | banana |
|  4 | orange |
|  5 | peach  |
|  6 | plum   |
+----+--------+
Подскажите пожалуйста, можно ли составить SQL (MySQL) запрос, который проверит существуют ли указанные id в таблице, и если есть, то вернуть количество?

Например такой запрос вернет 1:

Код: Выделить всё

SELECT COUNT(id) as count FROM fruits WHERE id IN (2,500);
id со значение 500 нет в таблице. Мне нужно чтобы в случае, когда я передаю несколько id и какие-нибудь из них не существуют в таблице, должно возвращаться 0.
Аватара пользователя
ElisDN
Сообщения: 5845
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Существуют ли указанные id в таблице?

Сообщение ElisDN »

Код: Выделить всё

count($ids) == Fruits::find()->andWhere(['id' => $ids])->count();
t3mnikov
Сообщения: 11
Зарегистрирован: 2017.02.03, 10:18

Re: Существуют ли указанные id в таблице?

Сообщение t3mnikov »

Спасибо, Дмитрий! Вы как всегда - спасаете в нужный момент!
Ответить