Hallo,
gegeben sind 4 Tabellen
session, users, resellers und pop3
in der Tabelle session gibt es eine Spalte user, welche die ID entweder von der Tabelle users, resellers oder pop3 enthält.
aktuel sieht mein SQL-Statement wie folgt aus:
SELECT
CASE
WHEN s.`type` = 'user'
THEN u.`login`
WHEN s.`type` = 'reseller'
THEN r.`login`
WHEN s.`type` = 'pop3'
THEN p.`login`
ELSE ''
END login
FROM `sessions` s, `users` u, `resellers` r, `pop3` p
WHERE `session` = ?
AND `ip` = ?
AND (
(
s.`type` = 'user'
AND s.`user` = u.`ID`
)
OR (
s.`type` = 'reseller'
AND s.`user` = r.`ID`
)
OR (
s.`type` = 'pop3'
AND s.`user` = p.`ID`
)
)
GROUP BY login;
kann man das irgendwie intelligenter mit INNER JOINs lösen?
also if s.type
= 'xxx' dann INNER JOIN xyz
ps. das Tabellenlayout kommt nicht von mir
Server Version: 5.0.45
MySQL-Client-Version: 5.0.51
mfg
Twilo
--
Farbtabelle
Farbtabelle