Несколько ИЛИ пункты в MySQL

Я пытаюсь захватить содержание где идентификатор = 3 ИЛИ идентификатор = 9 ИЛИ идентификатор = 100... Следует иметь в виду, у меня может быть несколько сотен из этих идентификаторов.

Что самый эффективный путь состоит в том, чтобы записать моему запросу?

$sql = "SELECT name FROM artists WHERE (id=3 OR id=9 OR .... id-100)"
15
задан OMG Ponies 14 June 2010 в 23:23
поделиться

7 ответов

  ....
WHERE id IN (3, 9, 100, ...)
32
ответ дан 1 December 2019 в 00:18
поделиться

$ sql = "ВЫБРАТЬ имя ИЗ исполнителей, ГДЕ id REGEXP шаблон регулярного выражения "

-1
ответ дан 1 December 2019 в 00:18
поделиться
SELECT * FROM table WHERE id IN (1, 2, 3 etc)

И вызывайте только нужные колонки, а не используйте *!

4
ответ дан 1 December 2019 в 00:18
поделиться

Вы можете использовать IN() функцию:

... WHERE id IN (3, 9, 100);

Синтаксис функции IN():

expr IN (value,...)

Проверьте, входит ли значение в набор значений. ...

Возвращает 1, если expr равно любому из значений в списке IN, иначе возвращает 0.

9
ответ дан 1 December 2019 в 00:18
поделиться

Вы можете использовать условие SQL IN

SELECT * FROM table WHERE ID IN ('1', '2', '3', '4');
4
ответ дан 1 December 2019 в 00:18
поделиться
SELECT * FROM table WHERE id IN (1,2,5)
2
ответ дан 1 December 2019 в 00:18
поделиться
SELECT * FROM table WHERE id IN (1,2,5);
1
ответ дан 1 December 2019 в 00:18
поделиться
Другие вопросы по тегам:

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