Alle Datensätze einer Woche

CyrusOne

Mitglied
Hy leute!!

Mein problem liegt darin, ich brauche alle Datensätze einer Woche!
Leider gibt es in SQL nicht so eine schöne Funktion wie Month() für week()!
Weil für ein Monat ist es ja ziemlich einfach

WHERE month(Datum)=month(now())

Ok zweite lösung, ich ermittle mir aus dem jetzigen Datum den Montag, addiere 4 Tage dazu und schon hab ich den Freitag!

Jetzt kann ich einfach abfragen


where Datum>='&Montag&' AND Datum<='&Freitag&'


Aber wie kann ich jetzt den Montag ermittel? Kann mir da jemand Helfen?
Oder hat jemand eine andere idee wie man das in asp lösen kann, oder gleich als einfache SQL Abfrage lösen kann?

baba Cyrus
 
Hi

die Frage ist eigentlich, welche Woche Du möchtest?
Möchtest Du die Datensätze der letzen Woche, auch wenn heute Mittwoch ist oder möchtest Du die Datensätze der jeweils letzten 7 Tage? Da bieten sich Funktionen wie Datediff() an.

2. Frage, welche Datenbank benutzt Du denn? Mysql läuft da etwas anders als mssql und die wiederum etwas anders als Access. In Access gibts noch die Funktion DatePart("ww",Date), wo man die aktuelle Woche und auch andere Attribute ermitteln kann.

http://www.techonthenet.com/access/functions/date/datepart.php
 
Zuletzt bearbeitet:
Morgen!!
1) Antwort
Ich möchte immer die aktuelle Woche.
Es geht darum das ich eine Essensanmeldung Coden muss.
Die Menüs der Woche werden aus einer Datenbank ausgelesen. Und natürlich sollen nur jene ausgelesen werden die in "dieser" Woche (das heist nächste Woche sollen andere Menüs ausgelesen werden) in der Datenbank vorkommen.
Also wenn heute Mittwoch der 19.07.2006 ist dan möchte ich von Montag 17.07.2006 bis Freitag 21.07.2006 auslesen!

2) Antwort
Das ganze läuft in Access! Hätt ich vielleicht auch mal erwähnen sollen *schäm* Sorry
Hmm die Funkition DatePart() hört sich garnichtmal so schlecht an .... muss ich gleich ausporbieren.

Danke für deine Hilfe, ich meld mich wenns weiterhin Troubles gibt :D

baba Cyrus

[EDIT]

Soooo hat ja wunderbar geklapt danke Luzie!
Hier ist die Lösung:

where DatePart('ww',Datum)=DatePart('ww',Date())

Datum ist die Colum in meiner Table
Date() ist die Funktion für das Aktuelle Datum

Danke nochmal ... baba Cyrus
 
Zuletzt bearbeitet:
Sooo ich hab ja gesagt ich meld mich nochmal *ggg*

Ok, ich bekomm volgende fehlermeldung:

[Microsoft][ODBC SQL Server Driver][SQL Server]Fehler bei der Anmeldung für den Benutzer 'NT-AUTORITÄT\ANONYMOUS-ANMELDUNG'.

Ist klar, ich muss irgentwo in benutzer und das kennwort angeben, aber nur wo? Das ist die frage!
Mein statement sieht bis jetzt so aus:

Set Catalog = Server.CreateObject("ADODB.Recordset")
Catalog.open "SELECT * FROM Personal","DSN=BEOSYS70"

Kann mir jemand sagen wie und wo man da den user und das passwort eingibt

baba Cyrus
 
Hallo

Du kannst die DSN im ODBC-Datenquellen Assistenten für den SQL-Server festlegen und die Verbindung auch direkt dort testen.

Läuft der SQL-Server denn lokal zum testen? Über die Windowsauthentifikation brauchst Du meines Wissens kein Kennwort angeben.
 
Des ist ja auch das was mich wundert!
Ich hab ja eine DNS erstellt, wo ich ja das Passwort schon angeben habe!
Eigentlich müsste ich ja vollen zugriff auf die datenbank haben
 
Hallo ich bins wieder ^^
Ist warscheinlich diesesmal nur ein kleines prob aber ich komm einfach nicht dahinter!
Folgender code

<%
DATUM = Request.Form("datum")
SUPPE = Request.Form("suppe")
MENUE1 = Request.Form("menue1")
MENUE2 = Request.Form("menue2")
DESSERT = Request.Form("Dessert")
IDM = Request.Form("idm")

Set Add = Server.CreateObject("ADODB.Recordset")
Add.Open "UPDATE Menü SET Datum = '"& DATUM&"' , Suppe='"& SUPPE&"', Menü1='"&MENUE1&"' ,Menü2='"& MENUE2&"', Dessert='"& DESSERT&"' WHERE ID = '"& IDM&"'","DSN=Intranet"


%>


Dies funktioniert nicht :( keine ahnung wiso, ich befürchte ja das die Variablen beim Ubdate stadtment nicht richtig "aufgerufen" werden! Aber bei meinen anderen statments hat das wunderbar funktioniert!!

Vielleicht hat jemand von euch eine idee

baba Cyrus
 
Zuletzt bearbeitet:
Hi

2 Sachen

du solltest bei Einträgen aus Formularfeldern die Hochkomma verdoppeln.

<%
function ersetze(s)
s = replace(s,"'","''")
ersetze = s
end function

dessert = ersetze(Request.Form("dessert"))
%>

Sonst bekommst Du ein Eingaben von Hochkomma Fehlermeldungen bei der Ausgabe und es ist einfach sicherer.

Wenn id ein Format vom typ integer hat, darf idm nicht gequotet werden (zumindest in Access nicht).

Ansonsten die Fehlermeldung genauer beschreiben bzw. auch mal das update-Statement auf den Bildschirm anzeigen lassen.
 
Hmm danke für den Tip mit den hochkomas!!

Jep meine ID ist vom typ integer, aber was is "quoten"?
Und noch was ... wie lässt man sich das update - statment auf den bildschirm ausgeben?

Ich arbeite erst seit 3 Wochen mit asp ... und das auch nur gezwungener massen!
Mache ferialpraktikum und da soll ich ne Essensbestellung für die Mitarbeiter coden.
Und des ganze halt mit asp und access DB. In php hätt ich mich wesentlich mehr ausgekannt ... also hab geduld mit mir :)

baba Cyrus
 
Zurück