Edit: Umbrüche einfügen
Mann, vielen Dank. Aber leider es ist immer noch nicht ganz das, was ich brauche, und jetzt verstehe ich, warum ich mein Ergebnis genauer hätte definieren müssen:
Anfahrten 2 ist das gewünschte Ergebnis.
Ich brauche als Ergebnis aber das hier, nur mit 2 statt 4 bei Anfahrten
Fhrzg ID Tour Datum Kennzeichen Ablade ID Anfahrten Abladestelle Summe Verkäufe
9 2018-12-24 XX-MM 314 82 4 Edeka-Markt 240
1 2018-12-24 XX-MM 3109 130 4 Autohaus XX 240
Also pro locations_id nur eine Zeile und dann die Summe der Verkäufe. Das habe ich mit diesem Code erzeugt:
Zum Verständnis: es geht in der Auswertung um den Umsatz eines Standplatzes, egal von wem und mit welchem Fahrzeug erzielt. Deswegen sollte die Gruppierung nach locations_id eigentlich reichen. Und es ist eben wichtig zu sehen, wie oft der Standplatz angefahren worden ist. Ich hoffe, ich habe diesmal alle nötigen Infos drin!
Edit: Sehe gerade, dass die meisten Felder gar keinen Sinn machen. So ist besser:
Mann, vielen Dank. Aber leider es ist immer noch nicht ganz das, was ich brauche, und jetzt verstehe ich, warum ich mein Ergebnis genauer hätte definieren müssen:
Code:
Query von oben: SELECT v.vehicles_id AS `Fhrzg ID`, v.date AS `Tour Datum`, v.vehicles_number_plate AS `Kennzeichen`, v.locations_id AS `Ablade ID`, COUNT( v.locations_int_no ) AS Anfahrten, v.locations_market_name AS `Abladestelle`, SUM( d.value ) AS `Summe Verkäufe` FROM `vehicle_loadings` v LEFT JOIN ( SELECT `vehicle_loadings_id` , SUM( `sold` * `VK` ) AS `Value` FROM `vehicle_loadings_data` WHERE `sold` >0 GROUP BY `id` ) d ON v.id = d.vehicle_loadings_id GROUP BY v.vehicles_id, v.date, v.vehicles_number_plate, v.locations_id, v.locations_market_name ergibt: Fhrzg ID Tour Datum Kennzeichen Ablade ID Anfahrten Abladestelle Summe Verkäufe 1 2018-12-24 XX-MM 3109 130 2 Autohaus XX 120 1 2019-01-07 XX-MM 3109 130 2 Autohaus XX 120 7 2019-01-07 XX-MM 348 82 2 Edeka-Markt 120 9 2018-12-24 XX-MM 314 82 2 Edeka-Markt 120
Ich brauche als Ergebnis aber das hier, nur mit 2 statt 4 bei Anfahrten
Fhrzg ID Tour Datum Kennzeichen Ablade ID Anfahrten Abladestelle Summe Verkäufe
9 2018-12-24 XX-MM 314 82 4 Edeka-Markt 240
1 2018-12-24 XX-MM 3109 130 4 Autohaus XX 240
Also pro locations_id nur eine Zeile und dann die Summe der Verkäufe. Das habe ich mit diesem Code erzeugt:
Code:
SELECT v.vehicles_id AS `Fhrzg ID`, v.date AS `Tour Datum`, v.vehicles_number_plate AS `Kennzeichen`, v.locations_id AS `Ablade ID`, COUNT( v.locations_int_no ) AS Anfahrten, v.locations_market_name AS `Abladestelle`, SUM( d.value ) AS `Summe Verkäufe` FROM `vehicle_loadings` v LEFT JOIN ( SELECT `vehicle_loadings_id` , SUM( `sold` * `VK` ) AS `Value` FROM `vehicle_loadings_data` WHERE `sold` >0 GROUP BY `id` ) d ON v.id = d.vehicle_loadings_id GROUP BY v.locations_id
Edit: Sehe gerade, dass die meisten Felder gar keinen Sinn machen. So ist besser:
Code:
locations_id Anfahrten Summe Verkäufe =================================== 82 2 240 130 2 240
Kommentar