Ja,sollte man meinen!
Bei einer 1:1 - Beziehung - kein Thema!. Aber bei einer 1:n -Beziehung erziele wiedersprüchliche Resulte. Vermute hat etwas Tabellenanordnung und zu erwartene Hits zu tun.
Leider habe ich zu wenig Ahnung von JETs um weiter nachzuvollziehen. Deshalb die Frage.
wie umgehe ich unterabfragen am besten?? (mysql)
Einklappen
X
-
Ja, hab ich vergessen... Aber DB-Normierung ist das ja nicht, was er da macht, denn das müsste doch meiner Meinung nach so aussehen:
Code:table user name | sprach_id schmidt | 1 table fskenntnisse id | bezeichnung 1 | Englisch
Einen Kommentar schreiben:
-
BLOSS NICHT!!!!
Dann ist doch die ganze Normierung futsch!!!!
Benutz left join statt normaler Verknüpfungen ... das geht um einiges schneller, und die DB bleibt normiert.
also:
select User.* from User U
left join Sprachkenntnisse S on S.USER_ID=U.ID
where U.NAME='Schmidt' and S.SPRACHE='Englisch'
Nachtrag@Sky: Du hast die Verknüpfung der Tabellen "daten" und "fskenntnisse" vergessen.
Einen Kommentar schreiben:
-
Wie würdet ihr das machen?
Eiegntlich gar nicht so... Warum benutzt du denn zwei Tabellen dafür? Alle Infos über eine Person können doch in eine Tabelle.
Aber wenn du möchtest:
SELECT rows FROM daten,fskenntnisse WHERE daten.nachname='Schmidt' AND fskenntnisse.englisch='1'
Einen Kommentar schreiben:
-
wie umgehe ich unterabfragen am besten?? (mysql)
Hallo an alle,
hab ein Problem mit einer my-sql abfrage (welcher eigentlich ne Unterabfrage enthält). Ich zeig euch mal ein kleines Beispiel meines Problems.
Ich habe zunächst eine
Tabelle 1, welcher Daten von Personen enhält (also z.B. folgende Felder: Nachname, Vorname, Geburtsdatum)
Tablle 2 enhält nun die Fremdsprachenkenntnisse dieser Personen (also z.B. folgende Felder: Französisch, Englisch, Spanisch)
Nun möchte ich eine Abfrage starten, die mir alle Personen zeigt welche Schmidt heißen und Englisch können. (die eigentlich Datenbank is noch viel umfangreicher - so dass ich auch Abfragen dieser Art brauche welche über 4-5 Tabellen gehen - ist also nur ein kleines Beispiel)
Wie würdet ihr das machen?
Riesen Dankeschön im vorraus!!!!
ThommyStichworte: -
Einen Kommentar schreiben: