Значения в Словаре не обновляются в NSDictionary Controller

Хотя ответ Билла Карвина - правильный запрос, должен знать определенный набор столбцов, но для динамического сводного запроса существует способ взлома с помощью group_concat

SET @sql = NULL;
SELECT GROUP_CONCAT(DISTINCT
  CONCAT('MAX(CASE WHEN `Type` = ''',
         `Type`, 
         ''' THEN Degignation END) `Type_',
         `Type`,
         '`'
         )

 )
  INTO @sql
  FROM t;

SET @sql = CONCAT('SELECT ID, ', @sql, ', Email 
                     FROM t 
                    GROUP BY ID,Email');
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;

См. демонстрацию


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

blockquote>

0
задан Łukasz 30 December 2018 в 14:56
поделиться