mahlzeit,
ich habe folgendes Ziel:
Es gibt zwei Tabellen. Tabelle 'tabelle1' mit einem Feld 'label'
Das Feld 'label' (tabelle1) beinhaltet den Wert des Feldes 'Bezeichner' der 'tabelle2'.
In der 'tabelle2' sind für diesen 'Bezeichner' mehrere Einträge die sich in dem Feld 'Sprache' unterscheiden.
Tabellen-Struktur:
tabelle1
id | label
tabelle2
Bezeichner|Sprache|Wert
Nun möchte ich folgendes machen:
Die SQL Abfrage soll zu dem 'label' Eintrag aus tabelle1 und einer angegebenen Sprache (int 1-4) den 'Wert' des Eintrages aus tabelle2 herausfinden. Dies funktioniert und ist ja auch nicht besonders kompliziert.
Jetzt stehe ich vor dem Problem:
Ich möchte, wenn der gewünschte Eintrag nicht existiert (zu der Sprache), die SQL Anweisung automatisch den Eintrag aus tabelle2 nimmt, der die Sprache='1' hat.
also circa so:
SELECT tabelle2.Wert
FROM tabelle1,tabelle2
WHERE tabelle1.id='1'
AND tabelle2.Bezeichner=tabelle1.label
AND
(WENN EXISTIERT(tabelle2.Sprache='$wantedLanguage')
ODER WENN NICHT EXISTIERT tabelle2.Sprache='1')
oder der letzte Teil als pseudo:
tabelle2.Sprache='$wanted..' XOR (tabelle2.Sprache='1' AND !EXIST(tabelle2.Sprache='$wanted..')
betrachtet man dieses mit generellen Variablen, so ist es eine Art XOR Schaltung in der ich ihm sage:
a || (b & !a)
Wie bekome ich das hin ?
Es soll wohl mit einer sub-query gehen,wobei ich diese vermeiden möchte. Da ich bisher keine Lösung gefunden habe, würde ich mich über eine Anregung freuen,
bis denne,
schamahn
ich habe folgendes Ziel:
Es gibt zwei Tabellen. Tabelle 'tabelle1' mit einem Feld 'label'
Das Feld 'label' (tabelle1) beinhaltet den Wert des Feldes 'Bezeichner' der 'tabelle2'.
In der 'tabelle2' sind für diesen 'Bezeichner' mehrere Einträge die sich in dem Feld 'Sprache' unterscheiden.
Tabellen-Struktur:
tabelle1
id | label
tabelle2
Bezeichner|Sprache|Wert
Nun möchte ich folgendes machen:
Die SQL Abfrage soll zu dem 'label' Eintrag aus tabelle1 und einer angegebenen Sprache (int 1-4) den 'Wert' des Eintrages aus tabelle2 herausfinden. Dies funktioniert und ist ja auch nicht besonders kompliziert.
Jetzt stehe ich vor dem Problem:
Ich möchte, wenn der gewünschte Eintrag nicht existiert (zu der Sprache), die SQL Anweisung automatisch den Eintrag aus tabelle2 nimmt, der die Sprache='1' hat.
also circa so:
SELECT tabelle2.Wert
FROM tabelle1,tabelle2
WHERE tabelle1.id='1'
AND tabelle2.Bezeichner=tabelle1.label
AND
(WENN EXISTIERT(tabelle2.Sprache='$wantedLanguage')
ODER WENN NICHT EXISTIERT tabelle2.Sprache='1')
oder der letzte Teil als pseudo:
tabelle2.Sprache='$wanted..' XOR (tabelle2.Sprache='1' AND !EXIST(tabelle2.Sprache='$wanted..')
betrachtet man dieses mit generellen Variablen, so ist es eine Art XOR Schaltung in der ich ihm sage:
a || (b & !a)
Wie bekome ich das hin ?
Es soll wohl mit einer sub-query gehen,wobei ich diese vermeiden möchte. Da ich bisher keine Lösung gefunden habe, würde ich mich über eine Anregung freuen,
bis denne,
schamahn