Как сохранить в mysql таким образом и сделать выборку? Например, есть поля, id, pole1, pole2.
Как записать в них типо:INSERT INTO table (pole1, pole) VALUES ('1,5,8', 'text kakoi-to');
А потом сделать выборку типо:select * from table where pole1='5'
В таблице хранится товар и категории к которым он пренадлежит. Какой тип поля должен быть у pole1 и как делать выборку...??

21 Авг 2019 в 06:31
311 +1
0
Ответы
1

Для хранения нескольких значений в одном поле в базе данных MySQL рекомендуется использовать поле типа VARCHAR или TEXT и сохранять значения в формате JSON или разделенных запятыми строк.

Пример записи данных:
INSERT INTO table_name (pole1, pole2) VALUES ('["1","5","8"]', 'text kakoi-to');

Пример выборки данных по значению в поле pole1:
SELECT * FROM table_name WHERE JSON_CONTAINS(pole1, '"5"');

Если вы используете разделенные запятыми строки, то запрос будет выглядеть так:
SELECT * FROM table_name WHERE FIND_IN_SET('5', pole1) > 0;

Однако следует помнить, что такой способ хранения данных может усложнить работу с базой данных и ухудшить производительность. Рекомендуется использовать связующую таблицу для хранения отношений между товарами и категориями.

20 Апр 2024 в 13:17
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир