#mysql #blob #group-concat
#mysql #клякса #group-concat #большой двоичный объект
Вопрос:
Я перепробовал почти все учебники в Интернете, пытаясь изменить group_concat_max_len, но поскольку файл my.ini не существовал group_concat_max_len на сервере wamp, и я выполняю следующие запросы, отображающие переменные типа ‘group%’; и УСТАНОВИТЕ @@group_concat_max_len = 9999999; но в нем говорится, что какие-либо строки затронуты, как я могу это исправить? Я не нахожу решения, пожалуйста, помогите
Я уже делаю запрос, но у меня не получается, он возвращает blob
SET GLOBAL group_concat_max_len=4096;
SELECT correo_id_correo, GROUP_CONCAT(destinatario_id_usuario SEPARATOR ',') FROM correo_has_usuario GROUP BY correo_id_correo;
Ответ №1:
Согласно странице руководства для GROUP_CONCAT():
Тип результата — TEXT или BLOB, если group_concat_max_len не меньше или не равно 512, и в этом случае тип результата — VARCHAR или VARBINARY .
Таким образом, увеличение group_concat_max_len
не вернет VARCHAR
или VARBINARY
. Вам нужно будет уменьшить его.
Комментарии:
1. Я попробовал этот НАБОР GLOBAL group_concat_max_len= 2000; ВЫБЕРИТЕ correo_id_correo, GROUP_CONCAT(РАЗДЕЛИТЕЛЬ destinatario_id_usuario ‘,’) ИЗ ГРУППЫ correo_has_usuario С ПОМОЩЬЮ correo_id_correo; бит, который не работает, я также уменьшаю, но какое-либо другое решение?
2. Пожалуйста, внимательно прочитайте: оно должно быть меньше или равно 512 . В любом случае, чего именно вы пытаетесь достичь?
3. hablas espaniol? вы говорите по-испански? Я уже решил с вашей помощью, спасибо, но я попытался изменить его.файл my.ini, а свойство group_concat_max_len не существует, вы знаете, почему?
4. Указывать все настройки необязательно. MySQL будет использовать значения по умолчанию практически для всего. Добавьте строку самостоятельно. (Да, я могу говорить по-испански, но я напоминаю вам, что это англоязычный сайт.)
Ответ №2:
Попробуйте это
SELECT concat(CONVERT(column1,char(8))," , ") AS id,
group_concat(CONVERT(column2, CHAR(20)) separator '|') AS result
FROM `tablename`
WHERE 1 group by column1
Здесь CONVERT
будет преобразовано значение поля column1 в тип char. и CONVERT
функция будет работать над этим.
Источник: Coderhub