助けてください。mysql_queryでmysql文を実行
私はmysqlのクエリを持っている:
SELECT GROUP_CONCAT(DISTINCT CONCAT('MAX(IF(mulai = ''',mulai,''', talenta, NULL)) AS ', QUOTE(mulai)) ORDER BY MULAI ASC) INTO @sql FROM history_talenta;
SET @sql = CONCAT('SELECT nip, nama, DATE_FORMAT(tgl_grade_terakhir,''%d-%m-%Y'') as tgl_grade_terakhir, ', @sql, ' FROM history_talenta GROUP BY nip');
PREPARE stmt FROM @sql;
EXECUTE stmt;
私はPHPのするmysql_query(からそれを実行したいと思います)が、何も表示されませんが、私はphpMyAdminに介して、それを試みたときにそれが動作し、値を返しました。
は2つのクエリに
「mysql_ *」APIを使用しないでください。廃止されました。 'mysqli_ *'または 'PDO'を使う – Jens
あなたの最初のクエリは' @ sql'に情報を入れています。あなたの2番目のstmtは 'concat()'の中間でそのvarを使って構築しています。あなたはそれを知らないわけではありません。あなたがmysqli_で安全にvarsを使用できるようにする 'heredoc'(またはあなたがそれらのブロックと呼んでいるもの)を表示する' mysqli_'については、私の答え[ここ](http://stackoverflow.com/a/32145480) '。また、 'SET SESSION group_concat_max_len = 10000;'や何らかの値 – Drew