C# Eintrag aus DataGridView wählen

...komplette Frage anzeigen

2 Antworten

Ich würde das so machen:

select * from tab1, tab2 
where days(tab1.datum) = (days(tab2.datum) + 1) 
and tab1.datum =  '01.08.2014'

Du bekommst jetzt alle Sätze paarweise, die in tab1 das angegebene Datum (01.08.2014) und in tab2 das um einen Tag höhere Datum (02.08.2014) haben.

Die Datenbank (meine Datenbank IBM DB2) verwendet intern für jeden Tag ab dem 01.01.0001 eine durchgehende lfd. Nr., die mit der Funktion days angesprochen und damit tageweise gerechnet werden kann. Die Ein- und Ausgabe des Datums wird in das externe Format und umgekehrt berechnet. Man spart sich damit die ganze Datumsrechnerei mit 30 und 31 Tagen und Schaltjahren. Ich gehe davon aus, dass das SQL-Standard ist und auch bei Deiner Datenbank so funktioniert.

Das sollte dich weiter helfen:

        OleDbDataAdapter adp = new OleDbDataAdapter("SELECT * FROM Tabelle where cDate = @dateToSelect", con);
        adp.SelectCommand.Parameters.AddWithValue("@dateToSelect", DateTime.Now);

Was möchtest Du wissen?