请帮助我。
我有 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 个查询:
第一个查询:
SELECT GROUP_CONCAT(DISTINCT CONCAT('MAX(IF(mulai = ''',mulai,''', talenta, NULL)) AS ', QUOTE(mulai)) ORDER BY MULAI ASC ) FROM history_talenta;
从 mysql_query 获取此查询的结果到 $sql1 变量中,然后构造另一个 SQL
$sql2 = "SELECT nip, nama, DATE_FORMAT(tgl_grade_terakhir,'%d-%m-%Y') as tgl_grade_terakhir, " . $sql1 . ' FROM history_talenta GROUP BY nip';
然后运行 mysql_query( $sql2 ) 。
注意:mysql_query 以及所有 mysql_* 函数均已弃用,我建议使用 mysqli_ 函数。
关于php - 通过mysql_query执行mysql语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38475112/