SQL Ошибка (1146) в MariaDB при использовании CTE и Dynami c SQL. Что я делаю не так? - PullRequest
0 голосов
/ 27 мая 2020

У меня следующий запрос:

WITH CTE1 AS (SELECT column1, column2, column3
              FROM table 1 ) ,CTE2 AS (SELECT column1, column2, column3
         FROM CTE1 
         WHERE column3 = 1) SELECT   GROUP_CONCAT( DISTINCT
    CONCAT(
      'SUM( CASE WHEN column2 = ''',
      t.column2,
      ''' THEN column3 END)  AS `',
      t.column2, '`'
    )   ) INTO @PivotQuery FROM CTE2 AS t;

SET @PivotQuery = CONCAT('SELECT column1,' ,@PivotQuery, ' 
                         FROM  CTE2 
                         GROUP BY column1');

PREPARE statement FROM @PivotQuery; EXECUTE statement; DEALLOCATE PREPARE statement;

при выполнении этого запроса я получаю следующее сообщение: SQL Ошибка (1146): Таблица 'performance_schema.CTE2' не существует Я выполнил этот тип кодирования на сервере SQL, и он отлично работает, но при переводе на Mariadb (MySQL) он отказывается работать.

INNODB - это мой механизм хранения, а Heidi SQL это интерфейс, который я использую.

Есть какие-нибудь подсказки, почему это не сработает?

...