我是 php 和 mysql 的新手,我正在尝试使用以下代码创建交叉表查询:
SET @sql = NULL;
SELECT
GROUP_CONCAT(DISTINCT
CONCAT('SUM(IF(category = ''',category,''', duration,NULL))AS ',category)) INTO @sql
FROM tblnon_oeedata;
SET @sql = CONCAT('SELECT productionDay, ', @sql, ' FROM tblnon_oeedata GROUP BY productionDay');
PREPARE stmt FROM @sql;
EXECUTE stmt;
每次我运行它时,我都会收到错误消息:
#1064
- 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“生产期间维护,SUM(IF(category = 'Breakdowns', duration,NULL))AS 附近使用正确的语法
我该如何解决这个问题,我真的被卡住了。提前致谢