#php #query-builder
#php #конструктор запросов
Вопрос:
У меня есть таблица ( shops
), в которой я храню данные следующим образом: ["bsd1234","qwe9876"]
в поле с именем products
, и я хочу получить shops
объекты, которые содержат данный продукт, используя createQueryBuilder()
.
Это должно выглядеть так, но я не могу найти решение:
public function findByProducts($value)
{
return $this->createQueryBuilder('s')
->andWhere('s.products = :val')
->setParameter('val', $value)
->orderBy('s.id', 'ASC')
->getQuery()
->getResult()
;
}
Можете ли вы помочь mw с этим?
Комментарии:
1. У вас есть несколько значений в одном
products
поле?2. Одно поле products может содержать одно или несколько значений (сохраненных как
["bsd1234","qwe9876"]
)3. Да, хорошо, не делайте этого. Смотрите первую обычную форму . Вы должны использовать таблицу соединений, подобную
shops_products
, которая имеет одну строку для каждого магазина для каждого продукта.