Query über zwei Tabellen
am 13.03.2006 09:56:57 von Jurij Klauss
Hallo NG,
ich habe zwei Tabellen. In der einen Tabelle (1) sind Mitarbeiterdaten
gespeichert. In der anderen Tabelle (2) werden die Mitarbeiter in einer
Liste (1,2,3) einem Datum zu geordnet. Ich möchte jetzt nur die Mitarbeiter
aus Tabelle (1) ziehen die in der Liste von Tabelle (2) gespeichert sind.
Mein Query:
SELECT democlub_personal.nr FROM democlub_personal,democlub_termine WHERE
democlub_personal.nr =
FIND_IN_SET('democlub_personal.nr','democlub_termine.persona l') AND
datum='2006-03-09' ORDER BY 'democlub_personal.personal_typ' DESC
Ich bekomme ein leeres Ergebins. Daten sind vorhanden.
Danke
Jurij
Re: Query über zwei Tabellen
am 13.03.2006 15:28:50 von dev-null-use-reply-adress
Jurij Klauss schrieb:
> ich habe zwei Tabellen. In der einen Tabelle (1) sind Mitarbeiterdaten
> gespeichert. In der anderen Tabelle (2) werden die Mitarbeiter in einer
> Liste (1,2,3) einem Datum zu geordnet. Ich möchte jetzt nur die Mitarbeiter
> aus Tabelle (1) ziehen die in der Liste von Tabelle (2) gespeichert sind.
1. Die Angabe, welches DBMS Du verwendest fehlt.
2. Eine (auszugsweise) Darstellung des Tabellendesigns wäre hilfreich.
3. Dein Problem hat eigentlich nichts mit PHP zu tun. Frage besser
in einer Datenbank-/SQL-Gruppe.
> SELECT democlub_personal.nr FROM democlub_personal,democlub_termine WHERE
> democlub_personal.nr =
> FIND_IN_SET('democlub_personal.nr','democlub_termine.persona l') AND
> datum='2006-03-09' ORDER BY 'democlub_personal.personal_typ' DESC
Stichworte: LEFT|RIGHT JOIN, WHERE ... IS NULL
Und was war gleich noch mal FIND_IN_SET() für eine Funktion?
Keine von MySQL, oder?
Gruß
JPM
Re: Query über zwei Tabellen
am 13.03.2006 15:37:10 von Frank Schenk
Jens Peter Moeller wrote:
....
> Und was war gleich noch mal FIND_IN_SET() für eine Funktion?
> Keine von MySQL, oder?
http://dev.mysql.com/doc/refman/5.0/en/string-functions.html
FIND_IN_SET(str,strlist)
Returns a value in the range of 1 to N if the string str is in the
string list strlist consisting of N substrings. A string list is a
string composed of substrings separated by , characters. If the first
argument is a constant string and the second is a column of type SET,
the FIND_IN_SET() function is optimized to use bit arithmetic. Returns 0
if str is not in strlist or if strlist is the empty string. Returns NULL
if either argument is NULL. This function does not work properly if the
first argument contains a comma (,) character.
mysql> SELECT FIND_IN_SET('b','a,b,c,d');
-> 2
Gruß, Frank ;)
P.S.: Irgendwie hat es die Funktion noch nicht in die Suchindizes geschafft.