Запрос MySQL ГДЕ … ИЛИ… Ярлык

#php #mysql #codeigniter #activerecord

#php #mysql — сервер #инициатор кодирования #активная запись #mysql

Вопрос:

Есть ли короткий путь для написания следующего запроса MySQL? Я ищу сокращение для сжатия

 SELECT * FROM `listings` where `bedroom` = 1 OR `bedroom` = 2
  

потому что я хочу упростить динамическое построение запроса MySQL в PHP. Что-то вроде WHERE bedroom = 1, 2 потому что числа, которые я получаю от PHP, находятся в массиве bedroom[1] = 1, bedroom[2] = 1 .

 SELECT * FROM `listings` where `bedroom` = 1 OR `bedroom` = 2;
  

И поскольку я использую Codeigniter, какой-нибудь ярлык для этого в Active Record тоже будет отличным!

Комментарии:

1. вы имеете в виду, как where bedroom < 2 ?

Ответ №1:

Я не очень хорошо понимаю, о чем вы спрашиваете; вам нужен более короткий запрос?
Если да, попробуйте это:

 SELECT * FROM listings WHERE bedroom IN (1,2)
  

Ответ №2:

С помощью ActiveRecord:

 $this->db->from("listings")->where_in("bedroom",bedroom)
  

Ответ №3:

Используйте IN синтаксис:

 SELECT * FROM `listings` where `bedroom` IN (1,2);
  

Ответ №4:

Вы можете написать:

 SELECT * FROM `listings` where `bedroom` in (1,2);