Select Ausgabe von zwei Textfeldern, aber jeweils nur eines ausgeben
bearbeitet vonHallo dedlfix,
ich finde UNION besser als IF. Das ist klarer und voll allem indexierbar. Ein OR im WHERE führt oft dazu, dass ein Index nicht benutzt wird (zumindest habe ich das vor vielen Jahren mal so gelernt).
~~~sql
SELECT id,namen1 as namen
FROM adress
WHERE namen1 = 10
UNION
SELECT id,namen2 as namen
FROM adress
WHERE namen2 = 10
ORDER BY id, namen
~~~
Der ORDER BY am Ende sorgt dafür, dass das Ergebnis nach ID sortiert ist. Ansonsten hättest Du zuerst alle Sätze mit namen1=10 und danach alle Sätze mit namen2=10.
_Rolf_
--
sumpsi - posui - clusi