2017-02-05 6 views
0

Ich habe Daten in MySQL, Beispiel:Visual Studio 2015 Report Designer verschachtelt Daten

+----+----------+--------+ 
| 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 |  | 
+----+----------+--------+ 

Ich bin zu wollen Berichte in Visual Studio Report Designer erstellen. Ich kann einige Abfragen erstellen und Berichte machen wie folgt aus:

+----------------------+ 
| 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  | 
+----------------------+ 

Aber ich bin zu wollen, etwas mehr wie folgt aus:

+-----------------------------+ 
| 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 | 
+-----------------------------+ 

Ich bin sicher, dass dies möglich ist, aber ich bin nicht sicher, wie es geht. Kann mir jemand in die richtige Richtung zeigen? Auch hier verwende ich Visual Studio 2015, mysql, vb.net und den Berichtsdesigner. Ich sehe die Erwähnung von Gruppen, Kind/Eltern usw., aber ich sehe keinen Weg, dies zum Funktionieren zu bringen. Danke im Voraus. Hey, im Moment wäre ich froh, wenn ich nur eine Abfrage in MySQL machen und in einer Tabelle anzeigen würde.

Antwort

0

MySQL GROUP_CONCAT() das kann man etwas geben, das die Informationen enthält, die Sie wollen, wenn auch nicht in das genaue Format der Ausgabe:

SELECT grade, 
     COUNT(*) AS defect_count, 
     GROUP_CONCAT(COALESCE(defect, '')) AS defects 
FROM yourTable 
GROUP BY grade 

Ausgang:

Grade #1 | 1 | short 
Grade #2 | 3 | dented, broken, long 
Grade #3 | 2 | 
Grade #4 | 2 | dented, short 
Grade #5 | 2 | 
Grade #6 | 1 | 
+0

Problem concat ist, dass frisst Ost/West-Immobilien liegt. Das ist das aktuelle Problem mit der App, die ich neu schreibe. Wenn ich zu viele eindeutige Defekte bekomme, passt es nicht auf die Seite. Ich würde lieber Nord/Süd machen, dann ist es nur eine andere Seite. Danke für den Vorschlag. – James

0

Das ist, was ich kam mit, die Abfrage:

SELECT 
Grade, 
SUM(Plated) AS Plated, 
SUM(iF(Reject_Reason <> "", 1, 0)) AS Rejects, 
Reject_Reason AS `Name`, 
COUNT(Reject_Reason) As `Count` 
FROM 
sorting.data 
WHERE 
job_name = @JobName 
GROUP BY Grade, Reject_Reason 

Das hat mich näher gebracht und der Rest wurde in Report Designer gemacht. Ich habe eine Kindergruppe hinzugefügt. Ich bin zufrieden damit, wie es herauskam. Siehe Beispielbericht, ignoriere die Daten, ich habe nur ein paar Sachen hineingeschmissen.

Report setup, child groupsample report

Verwandte Themen