Просмотр поста

.
erricss
Добавлено: 15.06.2018 / 18:21
Всем привет.
Помогите пожалуйста разобраться, сам не могу додумать.
Ситуация следующая:

Есть таблица mysql `catalog` выглядит так:

id  name .... others
1   яблоко    35,36
2   груша     34,35,36
3   киви      33,34,35

Есть массив
$mass= array("34", "35");


Как вывести значения которые бы были равны массиву, в не зависимости в каком порядке записаны в столбце `others`

Т.е. я должен получить на выходе строку с id=2 и строку с id=3

Добавлено: 15.06.2018 / 18:45
Люблю этот форум, сам спрошу, сам отвечу
Придумал такой костыль

SELECT * FROM `catalog` WHERE FIND_IN_SET('34', others) > '0' or  FIND_IN_SET('35', others) > '0'


Правильно ли это?

Добавлено: 15.06.2018 / 18:53
Еще вариант:

SELECT * FROM `catalog` WHERE `others` LIKE('%34%') or `others` LIKE('%35%')


Кто подскажет, как лучше?

Добавлено: 15.06.2018 / 19:01
Только не ‘or’ а ‘and’