PostgreSQL Подбирать любые строки - PullRequest
1 голос
/ 29 мая 2020

У меня есть запрос SQL:

select recipe_title
             from recipe where
             meal_type ='BREAKFAST'

Можно ли сопоставить любой food_type, изменив только BREAKFAST?

Such as:
    select recipe_title
                 from recipe where
                 meal_type = *

Я знаю, что могу использовать like %%, но для этого потребуется изменить много мест в моем коде. Возможно ли получить все food_type и по-прежнему использовать =

Спасибо!

1 Ответ

1 голос
/ 29 мая 2020

Нет. = - оператор равенства. Лучшее, что вы можете сделать, это WHERE meal_type = ANY('{BREAKFAST,LUNCH,DINNER}'), если у вас есть известный короткий список всех возможных значений, но нет поведения, подобного подстановочным знакам, с =. Правильный способ сделать это (вернуть все строки независимо от meal_type) - не иметь meal_type = <whatever> в вашем предложении WHERE.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...