Выборка записей по конкретным значениям в NodeJS
Если нужно выбрать запись из
какой-либо группы значений полей, можно применить
команду IN
. К примеру, можно выбрать записи, у которых
поле name
имеет значение 'user1'
, 'user3'
или
'user4'
. Это будет выглядеть так:
WHERE id IN ('user1'
, 'user3'
,
'user4'
).
В принципе, для таких вещей можно пользоваться
и командой OR
,
тогда первый пример будет выглядеть так:
WHERE id=1
OR id=3
OR id=7
OR id=14
OR
id=28
. Вариант с IN
все-таки выглядит
проще и изящнее.
Пример
Выберем юзеров, у которых поле
id
имеет значения 1
,
3
, 5
:
let query = "SELECT * FROM users WHERE id IN (1, 3, 5)";
Результат выполненного кода:
[
{ id: 1, name: 'user1', age: 23, salary: 400 },
{ id: 3, name: 'user3', age: 23, salary: 500 },
{ id: 5, name: 'user5', age: 27, salary: 500 }
]
Пример
Команду IN
можно комбинировать
с другими командами в запросе. Давайте
перепишем предыдущий пример, указав
еще, что возраст юзеров должен быть
более 23
лет:
let query = "SELECT * FROM users WHERE id IN (1, 3, 5) AND age>23";
Результат выполненного кода:
[ { id: 5, name: 'user5', age: 27, salary: 500 } ]
Практические задачи
Достаньте юзеров, у которых
зарплата имеет значения
400
и 900
.
Достаньте юзеров, возраст которых
составляет 25
, 27
и 28
лет. При этом
id более 2
.