Hallo ich habe ein Problem und zwar weiss ich nicht wie ich folgende Abfragen realisieren kann. Vieleicht kann mir jemand bei der ein oder anderen Abfrage helfen.
\
Wann sich das Fahrrad in Wartung befindet
(Monatliche und Tägliche Übersicht)
Wer ist wann mit dem Fahrrad gefahren
Wie oft wurde jedes einzelnde Fahrrad benutzt
Wie viele Tage hat der Bote gearbeitet?
Vielen Vielen Dank schonmal
Mein ERM:
http://imageupload.com/out.php/i114986_erm.JPG
Sp4wnyone:
Hallo ich habe ein Problem und zwar weiss ich nicht wie ich folgende Abfragen realisieren kann. Vieleicht kann mir jemand bei der ein oder anderen Abfrage helfen.
\
Wann sich das Fahrrad in Wartung befindet
(Monatliche und Tägliche Übersicht)
Wer ist wann mit dem Fahrrad gefahren
Wie oft wurde jedes einzelnde Fahrrad benutzt
Wie viele Tage hat der Bote gearbeitet?
Vielen Vielen Dank schonmal
Mein ERM:
http://imageupload.com/out.php/i114986_erm.JPG
Das hier ist kein kostenloses Hausaufgabenforum.
Aber als Anregung:
test=*# select * from wartung;
id | von | bis
----+------------+------------
1 | 2008-01-01 | 2008-01-10
1 | 2008-02-01 | 2008-02-10
(2 Zeilen)
Frage: liste alle Tage auf, die in die Bereiche fallen:
test=*# select * from (select (select min(von) from wartung) + s*'1day'::interval as tag from generate_series(0,(select max(bis)-min(von) from wartung)) s) foo, wartung where foo.tag between wartung.von and wartung.bis;
tag | id | von | bis
---------------------+----+------------+------------
2008-01-01 00:00:00 | 1 | 2008-01-01 | 2008-01-10
2008-01-02 00:00:00 | 1 | 2008-01-01 | 2008-01-10
2008-01-03 00:00:00 | 1 | 2008-01-01 | 2008-01-10
2008-01-04 00:00:00 | 1 | 2008-01-01 | 2008-01-10
2008-01-05 00:00:00 | 1 | 2008-01-01 | 2008-01-10
2008-01-06 00:00:00 | 1 | 2008-01-01 | 2008-01-10
2008-01-07 00:00:00 | 1 | 2008-01-01 | 2008-01-10
2008-01-08 00:00:00 | 1 | 2008-01-01 | 2008-01-10
2008-01-09 00:00:00 | 1 | 2008-01-01 | 2008-01-10
2008-01-10 00:00:00 | 1 | 2008-01-01 | 2008-01-10
2008-02-01 00:00:00 | 1 | 2008-02-01 | 2008-02-10
2008-02-02 00:00:00 | 1 | 2008-02-01 | 2008-02-10
2008-02-03 00:00:00 | 1 | 2008-02-01 | 2008-02-10
2008-02-04 00:00:00 | 1 | 2008-02-01 | 2008-02-10
2008-02-05 00:00:00 | 1 | 2008-02-01 | 2008-02-10
2008-02-06 00:00:00 | 1 | 2008-02-01 | 2008-02-10
2008-02-07 00:00:00 | 1 | 2008-02-01 | 2008-02-10
2008-02-08 00:00:00 | 1 | 2008-02-01 | 2008-02-10
2008-02-09 00:00:00 | 1 | 2008-02-01 | 2008-02-10
2008-02-10 00:00:00 | 1 | 2008-02-01 | 2008-02-10
(20 Zeilen)
Hilft das weiter?
Andreas
nein aber danke für die Mühe~
ich dachte mehr in richtung acces
ein bisschen habe ich schon selber gelößt.
zu 1.
select fahrradid, tag(arep.datum),tag(e.rep.datum)
where month(A.Rep.Datum) = Mai
das mit der wöchentlichen übersicht weiss ich nicht.
gibt es ein week= befehl?
zu 2.
Select FahrradID, Nachname, BotenNR, Nutz.Datum
from Radnutzung inner join Radnutzung on Bote.BotenNR = Radnutzung.BotenNR
hm und wie kann ich sehen wie viele tage er gearbeitet hat?
zu 3.
select count( * ), fahrradID
from Fahrrad
group by fahrradID
aber 4… hm
ads
9. Mai 2008 um 01:04
4
Klar gibt es week … nur nicht so, wie du wahrscheinlich denkst.
Schau mal bei den Date/Time-Funktionen in der Dokumentation nach.
Und 4 wirst du wohl auch über einen Count lösen, wenn es überschneidende Arbeitszeiten gibt, diese vorher zu Tagen zusammenfassen und gruppieren.