# MySQL-Abfrage über mehrere Tabellen

**URL:** <https://forum.shopware.com/t/mysql-abfrage-uber-mehrere-tabellen/64938>\
**Category:** Programmierung\
**Created:** [23. Februar 2020 um 09:27 UTC](https://forum.shopware.com/t/mysql-abfrage-uber-mehrere-tabellen/64938 "2020-02-23T09:27:29Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Gesundwuerzen](https://avatars.discourse-cdn.com/v4/letter/g/8c91f0/32.png) [@Gesundwuerzen](https://forum.shopware.com/u/Gesundwuerzen)\
**Post date:** [23. Februar 2020 um 09:27 UTC](https://forum.shopware.com/t/mysql-abfrage-uber-mehrere-tabellen/64938/1 "2020-02-23T09:27:29Z")

</div>

Hallo,

ich möchte eine Abfrage über mehrere Tabellen machen, die verknüpft sind.  
Irgendwie bekomme ich die Zuordnung von der Tabelle nicht hin.  
Es soll aus `s_order_shippingaddress`.`CountryID` AS `Kun_LAND` mirt ausgegeben werden, aber das LEFT JOIN funktioniert nicht, ich bekomme als Ergebnis „NULL“.  
&nbsp;

```
SELECT `s_order`.`id` AS `orderID` , `s_order_documents`.`docID` AS `Rechnungsnummer` , FORMAT( `s_order`.`invoice_amount`, 2,'de_DE' ) AS `Rechnungsbetrag` , FORMAT( `s_order`.`invoice_amount_net`, 2,'de_DE' ) AS `Nettobetrag` , `s_order_documents`.`date` AS `Rechnungsdatum` , `s_order`.`taxfree` , `s_order`.`currency` ,`s_order_shippingaddress`.`CountryID` AS `Kun_LAND`
FROM `s_order_documents`
LEFT JOIN `s_order` ON ( `s_order_documents`.`orderID` = `s_order`.`id` )
LEFT JOIN `s_core_paymentmeans` ON ( `s_order`.`paymentID` = `s_core_paymentmeans`.`id` )
LEFT JOIN `s_order_shippingaddress` ON ( `s_order`.`id` = `s_order_shippingaddress`.`id` )
WHERE `date` BETWEEN '2020-01-01' AND '2020-12-31'

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![Haraldio](https://avatars.discourse-cdn.com/v4/letter/h/e79b87/32.png) [@Haraldio](https://forum.shopware.com/u/Haraldio)\
**Post date:** [23. Februar 2020 um 09:36 UTC](https://forum.shopware.com/t/mysql-abfrage-uber-mehrere-tabellen/64938/2 "2020-02-23T09:36:23Z")

</div>

An Deinem Statement liegt’s aber nicht. Wenn ich das auf meinen Daten anwende, krieg ich eine prima Liste …&nbsp;

Check mal Deine DB. Veraltet? Keine Daten von 2020 … ?

---

<div class="post-metadata">

**Author:** ![Gesundwuerzen](https://avatars.discourse-cdn.com/v4/letter/g/8c91f0/32.png) [@Gesundwuerzen](https://forum.shopware.com/u/Gesundwuerzen)\
**Post date:** [23. Februar 2020 um 09:37 UTC](https://forum.shopware.com/t/mysql-abfrage-uber-mehrere-tabellen/64938/3 "2020-02-23T09:37:57Z")

</div>

doch, ich bekomme ein Ergebnis, aber die Spalte CountryID ist leer, weil da nichts kommt.

---

<div class="post-metadata">

**Author:** ![Haraldio](https://avatars.discourse-cdn.com/v4/letter/h/e79b87/32.png) [@Haraldio](https://forum.shopware.com/u/Haraldio)\
**Post date:** [23. Februar 2020 um 09:40 UTC](https://forum.shopware.com/t/mysql-abfrage-uber-mehrere-tabellen/64938/4 "2020-02-23T09:40:37Z")

</div>

Verstehe. Das wäre dann richtig:

```
SELECT `s_order`.`id` AS `orderID` , `s_order_documents`.`docID` AS `Rechnungsnummer` , FORMAT( `s_order`.`invoice_amount`, 2,'de_DE' ) AS `Rechnungsbetrag` , FORMAT( `s_order`.`invoice_amount_net`, 2,'de_DE' ) AS `Nettobetrag` , `s_order_documents`.`date` AS `Rechnungsdatum` , `s_order`.`taxfree` , `s_order`.`currency` ,`s_order_shippingaddress`.`CountryID` AS `Kun_LAND`
FROM `s_order_documents`
LEFT JOIN `s_order` ON ( `s_order_documents`.`orderID` = `s_order`.`id` )
LEFT JOIN `s_core_paymentmeans` ON ( `s_order`.`paymentID` = `s_core_paymentmeans`.`id` )
LEFT JOIN `s_order_shippingaddress` ON ( `s_order`.`id` = `s_order_shippingaddress`.`orderID` )
WHERE `date` BETWEEN '2020-01-01' AND '2020-12-31'

```

Du hattest id gewählt, muss aber orderID heißen.

&nbsp;

&nbsp;

---

<div class="post-metadata">

**Author:** ![Gesundwuerzen](https://avatars.discourse-cdn.com/v4/letter/g/8c91f0/32.png) [@Gesundwuerzen](https://forum.shopware.com/u/Gesundwuerzen)\
**Post date:** [23. Februar 2020 um 09:43 UTC](https://forum.shopware.com/t/mysql-abfrage-uber-mehrere-tabellen/64938/5 "2020-02-23T09:43:15Z")

</div>

Super, Danke das war der Fehler&nbsp; ![Halo](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/1X/d6f31fb007077fa834e26f5b6a29275ae615cbd1.png "Halo")
