Sorry falls die Frage etwas komisch ist, aber meine SQL-Kenntnisse würde ich als eher rudimentär einstufen
Mein Problem:
Ich habe eine Tabelle, aus der werden Länderinformationen (ISO-Code (=Landes_ID), ein Link, und ein paar weitere Daten) gezogen. Diese Informationen sollen in ein Array geladen werden. Das funktioniert auch problemlos.
Jetzt habe ich eine zweite Tabelle, in dieser sind die Ländernamen in vier verschiedenen Sprachen hinterlegt (de, en, es und fr).
Die Tabelle hat die Felder "Landes_ID", "Sprach_ID" und "Landesname".
Eine Abfrage in einer Sprache bekomme ich auch problemlos hin. Es wird dann der richtige Ländername (also in der richtigen Sprache) zu den richtigen Informationen geladen.
Nun zu meinem Problem:
Ich möchte für eine Administration dieses Datenbankfeldes die ein Array füllen, das zum einen die Informationen aus meiner Tabelle 1 enthält und die dazugehörigen vier verschiedenen Sprachen (z.B. mit dem Bezeichner "Landesname_de", "Landesname_en" etc.) abspeichert
Tabelle 1 ein sieht beispielsweise so aus:
ID Information
100 "Information zu Land 100"
104 "Information zu Land 104"
...
Tabelle 2 sieht nun so aus:
ID Sprach_ID Landesname
100 1 "Deutschland"
100 2 "Germany"
100 3 "Alemania"
104 1 "Frankreich"
104 2 "France"
104 3 "Frankia"
Ich möchte hinterher ein Array haben, in dem ich die Informationen alle zusammen habe:
ARRAY (ID, Information, Landesname_DE, Landesname_EN, Landesname_ES)
Wie mache ich das?!
Mein aktueller SQL-Befehl sieht so aus:
PHP-Code:
$countries_query_raw = "SELECT c.countries_id, cl.countries_name, c.information from " . TABLE_COUNTRIES . " c left join " . TABLE_COUNTRIES_LANGUAGES . " cl on (c.countries_id = cl.countries_id) where cl.language_id = 1 order by cl.countries_name";
Ich hatte probiert:
PHP-Code:
$countries_query_raw = "select c.countries_id, (cl.countries_name where language_id=1) as countries_name_de, (cl.countries_name where language_id=2) as countries_name_en, (cl.countries_name where language_id=3) as countries_name_es, c.information from " . TABLE_COUNTRIES . " c left join " . TABLE_COUNTRIES_LANGUAGES . " cl on (c.countries_id = cl.countries_id) order by countries_name_de";
Klappt aber nicht - und da verlassen mich meine Kenntnisse dann leider auch schon
