2012-03-25 9 views
0

im mit folgenden Arten von einfachen Tabelle SQL ServerSQL Server-Abfrage Zeilen durch Hinzufügen insbesondere nicht von Tagen zu bestimmten Datum

enter image description here

Hier möchte ich alle Zeilen abzurufen erhalten ausgewählt, bei denen Hinweise auf Datum Erstellt + Sichtbarkeitstage sind kleiner oder gleich dem aktuellen Datum/Uhrzeit.

+0

kann einige gegossen werden oder konvertieren Methode von SQL Datum erforderlich ist, wie hier erwähnt können http://msdn.microsoft.com /en-us/library/ms187928.aspx – Abhi

Antwort

1

Ich glaube, was Sie suchen ist dies, die DATEADD function

SELECT * 
FROM TABLE 
WHERE GETDATE() <= DATEADD(dd, NoticeVisibilityDays, CreatedOn) 
+1

Dies wird nicht in der Lage sein, einen Index zu verwenden. Verwenden Sie eine negative DATEADD auf der rechten Seite. – usr

+0

SQL Server-Berichte Die Funktion dateadd benötigt 3 Argumente. – Abhi

+0

@AbhishekGupta Ja, das habe ich behoben. Sorry, versuchen Sie es erneut –

1

eine Sichtbarkeit von 9 Tage mit der Annahme, Ihre where-Klausel

where (created + interval 9 day) <= now() 

CURRENT_TIMESTAMP oder now() lesen sollte, etc .

Woher bekommen Sie die Sichtbarkeit?

UPDATE: dann verwenden

where (getDate() + interval visibility day) <= now() 

Sie auch

where DATE_ADD(getDate(), interval visibility day) <= now() 
+0

Standardwert für createdOn ist durch (getdate()), gibt es einen solchen Wert 2012-03-26 02:47:00, Sichtbarkeit ich übergeben als Parameter – Abhi

+1

siehe Bearbeitungen für Ideen. – kasavbere

+0

danke mann für unseren Vorschlag auch – Abhi

Verwandte Themen