0
私はこのリンクでMySQLのpipotの行を使用するコードを使用しますMySQL pivot row into dynamic number of columns それはクエリエディタとSQL fidleで動作します。私は、このようなコードを使用してCodeIgniterの上のモデルPHPでCodeIgniterのMySQLのピボット行はsqlのフィドルで実行されますが、シンタックスモデルでは機能しませんcodeigniter
のモデルにクエリを使用する場合、それは動作しません:クエリの
$query=$this->db->query("
SET @sql = NULL;
SELECT
GROUP_CONCAT(DISTINCT
CONCAT(
'count(case when tahun = ''',
tahun,
''' then 1 end) AS tahun_',
replace(tahun, ' ', '')
)
) INTO @sql
from tb_tahun;
SET @sql = CONCAT('SELECT pt.jenis_perjal, ', @sql, ' from tb_jenis_perjal pt
left join tb_kebutuhan_perjal s
on pt.id_jenis_perjal = s.id_jenis_perjal
left join tb_tahun pd
on s.id_tahun = pd.id_tahun
group by pt.jenis_perjal');
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
");
結果:
Err Number : 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT GROUP_CONCAT(DISTINCT CONCAT('count(case when' at line 2
私は同じと思いますが、私はmr @ M.suleman K漢 –