php二维数组

标签 php mysql

我有一个sql表。该表显示 studentID、Subject_Name 和 Marks。希望你能看懂数据。

现在我需要通过在 Y 轴上垂直显示 studentID 并在 X 轴上水平显示 subject_Name 来在前端显示它。标记应显示为表体。

我使用 php 作为服务器端语言。

最佳答案

我相信一个简单的数据透视查询将为您提供所需的结果集:

SELECT studentID,
    SUM(CASE WHEN Subject_Name = 'CHEMISTRY' THEN Marks ELSE 0 END) AS `CHEMISTRY`,
    SUM(CASE WHEN Subject_Name = 'BIOLOGY'   THEN Marks ELSE 0 END) AS `BIOLOGY`,
    SUM(CASE WHEN Subject_Name = 'ENGLISH'   THEN Marks ELSE 0 END) AS `ENGLISH`,
    SUM(CASE WHEN Subject_Name = 'MATH'      THEN Marks ELSE 0 END) AS `MATH`
FROM students
GROUP BY studentID

您可以用表格中实际类(class)科目的名称替换和添加/减去我提供的示例列。

点击下面的链接获取工作演示:

SQLFiddle

关于php二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37290257/

相关文章:

javascript - 无法让警报弹出窗口正常工作

php - 登录PHP和Mysql

java - Spring @Transactional 不适用于 mysql 函数调用

php - Mobiweb 短信提供商 自动 dlr 转发

mysql - 左连接查询返回的数据不正确

php - 如果匹配任何值,则将多个值与另一个表的多个值匹配,而不是在 mysql 中返回原始值

插入期间PHP mysqli随机错误

mysql - linux下mysql数据自动备份

mysql - asp.net core 2 MySQL Driver 3.51 需要 ODBC 吗?

php - 000webhosting 数据库不允许我向 phpmyadmin 发送值