php - 如何在不知道列名的情况下从 mysql 查询中检索表行?
问题描述
如何在不知道列名的情况下从 mysql 查询中检索表行?
现在我有一个名为date
的已知列,而其他列不知道,因为它是一个数据透视表。
SET @sql = NULL;
SELECT
GROUP_CONCAT(DISTINCT
CONCAT(
'count(case when categoryID = ''',
categoryID,
''' then value end) AS `',
categoryID, '`'
)
) INTO @sql
FROM points;
SET @sql = CONCAT('SELECT date, ', @sql, '
FROM points
GROUP BY date');
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
结果:
php代码:
<?php
$con = mysqli_connect('localhost','root','','mypointsdb');
$query= "the above query"
$exc = mysqli_query($con, $query);
$result=[];
while($row -> mysqli_fetch_array($exc)){
$result[]= $row;
}
?>
现在我想让没有列名的表行是这样的
[2018-01-10, 0,0,0,0,1,0]
[2018-10-11, 0,0,0,0,1,0]
[2018-11-04, 1,0,1,0,1,0]
[2018-11-05, 0,0,0,1,1,3]
... etc
解决方案
要将数据作为简单数组获取,您可以使用mysqli_fetch_row()
而不是mysqli_fetch_array()
. 所以你的代码可能是这样的:
<?php
$con = mysqli_connect('localhost','root','','mypointsdb');
$query= "the above query"
$exc = mysqli_query($con, $query);
$result=[];
while($row = mysqli_fetch_row($exc)){
$result[]= $row;
}
?>
推荐阅读
- firebase - Firebase JS SDK version change
- bash - replace date format in a text file name used as an argument in a subscript of a main bash script. Further explained
- wordpress - how to Import woocommerce category images from csv
- python - 在 python 中,我执行 "dictionary = {"key": [value, value], (etc)}" 如何在 Visual Basic 中执行此操作?
- java - Docker 服务健康检查不适用于 Spring Boot 应用程序
- dart - Variable declaration in Dart
- intellij-idea - 使用插件更改 IntelliJ 运行配置环境变量
- node.js - 通过指定间隔获取数据的猫鼬查询
- c# - OpenStreetMapProvider 许可证
- angular - Ionic 4 角度页面事件的问题