Seite 1 von 1

Abfragen nach Zahlenspannen

Verfasst: Di, 04.03.2014 20:47
von franzischade
Hallo!
Ich hab noch nicht wirklich viel Ahnung von Datenbanken, aber ich versuche im Moment meine (Brett-)Spielesammlung in eine solche zu packen, sodass man dann nach bestimmten Kriterien nach Spielen suchen kann. Wenn ich jetzt aber z.B. als ein Feld die Dauer eines Spieles habe und in der Abfrage nach einer Spanne an Zeit (z.B. 30-60 min) suchen will, was muss ich dann eingeben. gleiches Problem tritt auch mit den Spielern auf.
Vielen Dank für Eure Hilfe!

Re: Abfragen nach Zahlenspannen

Verfasst: Di, 04.03.2014 21:27
von F3K Total
Hi,
prinzipiell etwa so:

Code: Alles auswählen

Select * from "Tabelle" where "Dauer" >=30 AND "Dauer" <=60
Gruß R

Re: Abfragen nach Zahlenspannen

Verfasst: Di, 04.03.2014 21:33
von RobertG
Hallo franzischade,

grundsätzlich ist für die Anfrage von solchen "Spannen" das Schlüsselwort "BETWEEN" verantwortlich.
Angenommen, Du erstellst eine Abfrage im grafischen Modus. Gib einfach in der Spalte, in der Du eine Begrenzung vornehmen willst (z.B. "Spielzeit"), unter "Kriterium"
Zwischen 30 und 45
ein. In SQL macht Base daraus
BETWEEN 30 AND 45
Das kann natürlich nur dann wirksam etwas finden, wenn es sich um Zahlenfelder handelt.
Jetzt willst Du vielleicht noch die Abfrage flexibel haben.
Mit
ZWISCHEN :Start UND :Ziel
bekommst Du eine Parameterabfrage hin.
In SQL sieht so eine Abfrage dann so aus:

Code: Alles auswählen

SELECT "Spiel", "Spielzeit" FROM "Tabelle" WHERE "Spielzeit" BETWEEN :Start AND :Ziel
Ansonsten ruhig einmal im Base-Handbuch etwas lesen - natürlich Kapitel "Abfragen".

Gruß

Robert

Re: Abfragen nach Zahlenspannen

Verfasst: Di, 04.03.2014 21:40
von franzischade
sehr cool! Vielen Dank!!
Bleibt noch die Frage, wie ich die Spielerzahl in die Tabelle eintragen muss. das ist ja meist variabel (also z.B. 2-4). Wenn ich jeden Wert durch Komma getrennt eingebe, checkt er das nicht. Wie mache ich das am besten, dass er mir auch da bei er Abfrage z.B nach 2 Spielern das Spiel mit 2-4 Spielern ausgibt?

Re: Abfragen nach Zahlenspannen

Verfasst: Di, 04.03.2014 21:43
von RobertG
Hallo franzischade,

mach' für die Spielerzahl zwei Felder: Spieler_Min und Spieler_Max.
Besser vorher bei den Tabellen rechtzeitig trennen als nachher die Probleme mit viel Aufwand umschiffen.

Gruß

Robert

Re: Abfragen nach Zahlenspannen

Verfasst: Di, 04.03.2014 22:33
von franzischade
Und wie frage ich das dann am besten ab? Wenn ich als Bsp. bei einem Spiel Spieler Min 2 und Spieler Max 4 habe und dann nach 3 Spielern suche.
Sorry für meine etwas dummen Fragen, aber ich hab halt echt wenig Ahnung davon... :S

Re: Abfragen nach Zahlenspannen

Verfasst: Mi, 05.03.2014 08:08
von F3K Total
So?

Code: Alles auswählen

SELECT "Spiel", "Spielzeit", "Spieler_Min", "Spieler_Max" FROM "Tabelle" WHERE :Spielerzahl >= "Spieler_Min"  AND :Spielerzahl <= Spieler_Max 
Gruß R

Re: Abfragen nach Zahlenspannen

Verfasst: Mi, 05.03.2014 12:34
von franzischade
Ja, da drauf war ich tatsächlich jetzt auch schon gekommen :) Vielen dank für Eure Hilfe!!