таблицы Pivot в MySQL с динамическими столбцами
int user_id значения вызывают проблему, поскольку они используются непосредственно в виде имен столбцов. Чтобы решить эту проблему, эти значения должны быть обернуты в бэки (`). Исправленный код корректирует это:
... Group_concat (различный Конт ( 'max (случай, когда user_id =' '', ID пользователя, '' 'тогда заберите конец) как' ', user_id, '' ' ) ) В @sql
final, исправленный запрос:
... GROUP_CONCAT(DISTINCT CONCAT( 'max(case when user_id = ''', user_id, ''' then score end) AS ', user_id ) ) INTO @sqlset @sql = null; ВЫБИРАТЬ Group_concat (различный Конт ( 'max (случай, когда user_id =' '', ID пользователя, '' 'тогда заберите конец) как' ', user_id, '' ' ) ) В @SQL Из меры2; SET @SQL = CONCAT ('SELECT Inspection_Date,', @SQL, ' Из меры2 Группа по esspection_date '); Подготовьте STMT от @SQL; Выполнить STMT; Deallocate Подготовка stmt;
с этими корректировками, таблица Pivot теперь может быть успешно сгенерирована даже при работе с значениями integer user_id.
]
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3