Hallo liebe Nickles-Gemeinde,
ich zerbreche mir gerade den Kopf über einer augenscheinlich einfachen Aufgabe. Da ich jedoch noch neu in der SQL-Welt bin, hoffe ich auf Eure Unterstützung.
Also ich habe folgende Abfragen:
1)
SELECT vorname FROM personen WHERE alter 60 AND Name LIKE 'F*')
2)
SELECT vorname FROM personen WHERE alter 60 OR Name LIKE 'F*')
Meine "Vermutung" wie die Ausgaben ausschauen könnten:
zu 1)
Es werden alle Vornamen von Personen aus der Tabelle personen ausgegeben, die unter 40 Jahren sind und die über 60-jährigen die mit F anfangen.
zu 2)
Es werden alle Vornamen von Personen aus der Tabelle personen ausgegeben, die unter 40 sind und mit F anfangen.
Liege ich mit meinen Vermutungen richtig?
Evt. liegt es ja auch an der späten Stunde und dem langen Tag den ich bisher hatte, dass ich mich damit so schwer tue. Über ein kurzes Statement würde ich mich sehr freuen.
Beste Grüße
Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge
zu 1)
Es werden alle Vornamen von Personen aus der Tabelle personen ausgegeben, die unter 40 Jahren sind und die über 60-jährigen die mit F anfangen.
Nein. Bei den über 60 jährigen nur die, die mit Nachnamen F* (... das wäre schon ein sehr exotischer Nachname und allein schon aus praktisch Gründen würde ich jedem der so heißt empfehlen seinen Nachnamen in eine alltagstaugliche Version wie Fsternchen ändern zu lassen) heißen! Mit LIKE 'F%' würdest Du aber das vermutete Ergebnis bekommen ;-)
zu 2)
Es werden alle Vornamen von Personen aus der Tabelle personen ausgegeben, die unter 40 sind und mit F anfangen.
Ja.
Es werden alle Vornamen von Personen aus der Tabelle personen ausgegeben, die unter 40 Jahren sind und die über 60-jährigen die mit F anfangen.
Nein. Bei den über 60 jährigen nur die, die mit Nachnamen F* (... das wäre schon ein sehr exotischer Nachname und allein schon aus praktisch Gründen würde ich jedem der so heißt empfehlen seinen Nachnamen in eine alltagstaugliche Version wie Fsternchen ändern zu lassen) heißen! Mit LIKE 'F%' würdest Du aber das vermutete Ergebnis bekommen ;-)
zu 2)
Es werden alle Vornamen von Personen aus der Tabelle personen ausgegeben, die unter 40 sind und mit F anfangen.
Ja.
Liege ich mit meinen Vermutungen richtig?
Kommt drauf an, welches Datenbanksystem du benutzt. In MS Access wären deine Vermutungen 100%ige Treffer; in den meisten anderen DBS jedoch nicht, da müsstest du erst den * durch % ersetzen.
Volker
Kommt drauf an, welches Datenbanksystem du benutzt. In MS Access wären deine Vermutungen 100%ige Treffer; in den meisten anderen DBS jedoch nicht, da müsstest du erst den * durch % ersetzen.
Volker