我在PhP中仍然很新,我在这里有这样的陈述:
SET @sql = NULL;
SELECT
GROUP_CONCAT(DISTINCT
CONCAT(
'GROUP_CONCAT(CASE WHEN `Date` = ''',
`Date`,
''' THEN hours ELSE NULL END) AS `',
`Date`, '`'
)
) INTO @sql
FROM Days;
SET @sql = CONCAT('SELECT Name, ', @sql,'
FROM Days
GROUP BY Name
');
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
我正在尝试用Php执行它,所以我有像这个小提琴一样的html表:
答案 0 :(得分:0)
当我使用这样的prepare语句时,我从sql所在的函数返回fetchAll
。这将返回所有数据的数组。
然后我可以在HTML页面中按照我认为适合的格式对其进行格式化:
$data = nameOfYourFunctionThatReturnsFetchAll;
<?php echo '<li>' . $data['nameOfFieldFromDatabase'] . </li> ?>
Etc等
编辑:
<?php
function getData(){
sql here
try{
execute sql here
}catch PDOException($e){
$e->getMessage();
}
return fetchAll();
}
然后
$data = getData();
然后在你的HTML
中<?php echo '<li>' . $data['name'] . </li> ?>
您需要知道$ data ['name']中的值是指数据库中字段的名称,因此请确保它们匹配