none
Select mit Vergleich zweier DateTime-Werte in einer Tabelle RRS feed

  • Frage

  • Hallo,

    als Beispiel eine Tabelle:

    Create table TEST(Berechnen INT,Datum DATETIME)
    INSERT INTO TEST (Berechnen, Datum) VALUES (0, CONVERT(Datetime,'2012-01-01 08:00:00',102))
    INSERT INTO TEST (Berechnen, Datum) VALUES (1, CONVERT(Datetime,'2012-01-01 16:30:00',102))
    INSERT INTO TEST (Berechnen, Datum) VALUES (0, CONVERT(Datetime,'2012-01-02 08:00:00',102))
    INSERT INTO TEST (Berechnen, Datum) VALUES (1, CONVERT(Datetime,'2012-01-02 09:45:00',102))
    INSERT INTO TEST (Berechnen, Datum) VALUES (0, CONVERT(Datetime,'2012-01-03 11:00:00',102))
    INSERT INTO TEST (Berechnen, Datum) VALUES (1, CONVERT(Datetime,'2012-01-03 08:30:00',102))

    Mein Problem ist nun, das ich in einem Select alle Datensätze mit Berechnen = 1 ermitteln möchte, wo am selben Tag der Unterschied zwischen Berechnen = 1 und Berechnen = 0 größer als 5 Stunden ist. Steh da gerade völlig auf dem Schlauch.

    Für Eure Tipps dankend,

    Klaus


    No Brain - No Pain

    Mittwoch, 9. Mai 2012 07:17

Antworten

  • Hi,

    das sollte gehen.

    select 
    	*
    	
    from 
    	test t1 inner join test t2
    	on t2.berechnen = 0 and Convert(VarChar(12),t1.Datum,104) = Convert(VarChar(12),t2.Datum,104) 
    	and
    	(DATEDIFF(hh, t1.datum, t2.datum) > 5 OR DATEDIFF(hh, t1.datum, t2.datum) < -5)
    where
    	t1.berechnen = 1

    Grüße

    Oliver

    • Als Antwort markiert Klaus Mayer Mittwoch, 9. Mai 2012 07:38
    Mittwoch, 9. Mai 2012 07:30

Alle Antworten

  • Hi,

    das sollte gehen.

    select 
    	*
    	
    from 
    	test t1 inner join test t2
    	on t2.berechnen = 0 and Convert(VarChar(12),t1.Datum,104) = Convert(VarChar(12),t2.Datum,104) 
    	and
    	(DATEDIFF(hh, t1.datum, t2.datum) > 5 OR DATEDIFF(hh, t1.datum, t2.datum) < -5)
    where
    	t1.berechnen = 1

    Grüße

    Oliver

    • Als Antwort markiert Klaus Mayer Mittwoch, 9. Mai 2012 07:38
    Mittwoch, 9. Mai 2012 07:30
  • Aber so was von DANKE DIR!!!! Schick, rockt einwandfrei und wieder was gelernt. :-)

    Danke,

    Klaus


    No Brain - No Pain

    Mittwoch, 9. Mai 2012 07:38