Hi
Gibt's irgendwie ein Möglichkeit "Klammern" zu setzen? damit er weiß, daß die Raum-Argumente zusammengehören und nur eines von denen zutreffen muß, urlaubdatum aber auf jeden Fall?
Ja, die gibt es, benutze Klammern einfach
select * <- pfui (wieso steht sicher irgendwo im Archiv)
from namen
left join aerzte
on namen.name = aerzte.arzt
left join urlaub
on urlaub.urlaubname = namen.name
where urlaub != current_date
and (Raum != '1.Dienst' or Raum != '2.Dienst' or Raum != 'FOÄ');
SELECT wasduwillst FROM tabelle WHERE bedingung1 AND bedingung2 AND bedingung2 HAVING
bedingung4 OR bedingung5 OR bedingung6
Nein, having hat in diesem Zusammenhang nichts verloren. Was having macht, ist wenn du
Groupingfunktionen hast wie sum und den zugehörigen Group By nach den where clauses
noch Records rausfiltern, also auf dem Resultat. Das heisst, es wird ohne Indexzugriffe!
nochmal ein Resulttablescan gemacht. Natürlich verlangsamt das stark und es sollte
nur in Ausnahmefällen angewendet werden wenn eben beispielsweise nur Records mit
sum > x ausgegeben werden sollen, also Daten die _vor_ dem group nicht verfügbar sind.
Gruss Daniela