我在MySQL中有数据,例如:
+----+----------+--------+
| Id | grade | defect |
+----+----------+--------+
| 1 | Grade #2 | dented |
+----+----------+--------+
| 1 | Grade #3 | |
+----+----------+--------+
| 1 | Grade #4 | dented |
+----+----------+--------+
| 1 | Grade #5 | |
+----+----------+--------+
| 1 | Grade #4 | short |
+----+----------+--------+
| 1 | Grade #5 | |
+----+----------+--------+
| 1 | Grade #1 | short |
+----+----------+--------+
| 1 | Grade #6 | |
+----+----------+--------+
| 1 | Grade #2 | broken |
+----+----------+--------+
| 1 | Grade #2 | long |
+----+----------+--------+
| 1 | Grade #3 | |
+----+----------+--------+
我想在 Visual Studio 报表设计器中创建报表。我可以创建一些查询并制作如下报告:
+----------------------+
| Grade Count |
+----------------------+
| Grade #1 1 |
+----------------------+
| Grade #2 3 |
+----------------------+
| Grade #3 2 |
+----------------------+
| Grade #4 2 |
+----------------------+
| Grade #5 2 |
+----------------------+
| Grade #6 1 |
+----------------------+
| Total 11 |
+----------------------+
| |
+----------------------+
| Defect Count |
+----------------------+
| dented 2 |
+----------------------+
| short 2 |
+----------------------+
| broken 1 |
+----------------------+
| long 1 |
+----------------------+
| Total 6 |
+----------------------+
但是,我想要更像这样的东西:
+-----------------------------+
| Grade Count |
+-----------------------------+
| Grade #1 1 |
+-----------------------------+
| Short |
+-----------------------------+
| Grade #2 3 |
+-----------------------------+
| dented |
+-----------------------------+
| broken |
+-----------------------------+
| long |
+-----------------------------+
| Grade #3 2 |
+-----------------------------+
| Grade #4 2 |
+-----------------------------+
| dented |
+-----------------------------+
| short |
+-----------------------------+
| Grade #5 2 |
+-----------------------------+
| Grade #6 1 |
+-----------------------------+
| Total 11 |
+-----------------------------+
我确信这是可能的,但我不知道该怎么做。有人能指出我正确的方向吗?同样,我使用 Visual Studio 2015、mysql、vb.net 和报表设计器。我看到提到了团体、 child /家长等,但我看不出有什么方法可以实现这项工作。提前致谢。哎呀,现在我很乐意在 mysql 中进行查询并显示在表中。
最佳答案
MySQL 的 GROUP_CONCAT()可以给你一些包含你想要的信息的东西,尽管不是你的输出的确切格式:
SELECT grade,
COUNT(*) AS defect_count,
GROUP_CONCAT(COALESCE(defect, '')) AS defects
FROM yourTable
GROUP BY grade
输出:
Grade #1 | 1 | short
Grade #2 | 3 | dented, broken, long
Grade #3 | 2 |
Grade #4 | 2 | dented, short
Grade #5 | 2 |
Grade #6 | 1 |
关于mysql - Visual Studio 2015 报表设计器嵌套数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42048744/