2015-11-12 7 views
2

Мне нужно сделать запрос, чтобы узнать, содержит ли ARRAY2 всех членов моего ARRAY1.Как я могу сравнить два массива в ГДЕ?

Нечто подобное:

->where("entity.array IN :array_in_parameters") 

Например, если entity.array содержит числа 1 2 3 4 и array_in_parameters содержит 1 2 3, он должен выбрать его.

У вас есть идея?

ответ

0

Вы можете использовать FIND_IN_SET, но это будет неэффективно. Вы должны найти каждый элемент в отдельности array_in_parameters:

where find_in_set(1, entity.array) > 0 and 
     find_in_set(2, entity.array) > 0 and 
     find_in_set(3, entity.array) > 0 

Смотреть подробнее here.

Смежные вопросы