16 messages in com.mysql.lists.mysql-deFrage zu Joins mit ON Klausel| From | Sent On | Attachments |
|---|---|---|
| Jürgen Schneider | 19 Jun 2006 01:58 | |
| Barry | 19 Jun 2006 02:02 | |
| Jürgen Schneider | 19 Jun 2006 02:07 | |
| Barry | 19 Jun 2006 02:22 | |
| Jürgen Schneider | 19 Jun 2006 02:51 | |
| Barry | 19 Jun 2006 02:55 | |
| Jürgen Schneider | 19 Jun 2006 03:16 | |
| Barry | 19 Jun 2006 06:31 | |
| Sebastian Mendel | 19 Jun 2006 06:51 | |
| Jürgen Schneider | 20 Jun 2006 00:02 | |
| Jürgen Schneider | 20 Jun 2006 00:03 | |
| Marcus Franke | 20 Jun 2006 00:08 | |
| Sebastian Mendel | 20 Jun 2006 00:29 | |
| Jürgen Schneider | 21 Jun 2006 01:14 | |
| Rene | 22 Jun 2006 11:41 | |
| Barry | 26 Jun 2006 00:57 |
| Subject: | Frage zu Joins mit ON Klausel![]() |
|---|---|
| From: | Rene (Re...@svrider.de) |
| Date: | 06/22/2006 11:41:18 AM |
| List: | com.mysql.lists.mysql-de |
Hallo Liste! Ich habe schon seit längerem eine Frage, die ich immer vor mich her schiebe. Ich habe z.B. den folgenden SQL Select:
SELECT u.user_id, u.username, r.user_id AS drin FROM HP_users u LEFT JOIN HP_rechte r ON ((r.user_id = u.user_id) AND (r.wert1 = 75) AND (r.skript = "bdm")) ORDER BY u.username
Im sauberen SQL Stil soll man in der ON Klausel ja keine Konstanten als Vergleich angeben sondern dort nur verknüpfte Tabellen. Ich gebe dort aber Konstanten an und weiß nicht wie ich die bei einem LEFT JOIN auslagern kann. Sobald ich es wie folgt versuche, bekomme ich ein leeres Ergebnis und nicht Tonnen von Datensätzen mit einer Spalte "drin" = NULL wie gewollt.
SELECT u.user_id, u.username, r.user_id AS drin FROM HP_users u LEFT JOIN HP_rechte r ON r.user_id = u.user_id WHERE r.wert1 = 75 AND r.skript = "bdm" ORDER BY u.username
Wie könnte man solche Probleme generell lösen? Ist nur eins von ein paar Statements, wo ich Konstanten im ON Teil angegeben habe.
Danke im Vorraus René




