Пример использования FIND_IN_SET()

Допустим есть поле, где хранится список значений, например «1,5,7» или «2,5,8».

+----+---------+--------+
| id | title   | list   |
+----+---------+--------+
| 1  | title 1 | 1,5,7  |
+----+---------+--------+
| 2  | title 2 | 3,7,10 |
+----+---------+--------+
| 3  | title 3 | 2,5,8  |
+----+---------+--------+

И надо выбрать записи, где в списке присутсвует число «5». Сделать это можно через FIND_IN_SET().

Способ показан для примера, вместо FIND_IN_SET() лучше использовать связки «один к одному» или «один ко многим».

SELECT id,title,list FROM posts WHERE FIND_IN_SET(5, list)

В итоге будут выбраны следующие записи:

+----+---------+--------+
| id | title   | list   |
+----+---------+--------+
| 1  | title 1 | 1,5,7  |
+----+---------+--------+
| 3  | title 3 | 2,5,8  |
+----+---------+--------+