2011-01-17 18 views
0

ich brauche, wie viele Tage in diesem Monat haben zu finden, die wir mit dem heutigen Datumfind Monat Tage

select to_number(to_date('01.02.2011')-to_date('01.01.2011')) from dual; 

nicht diese Abfrage haben weitere Fragen finden können?

+1

Sie sollten eine der Antworten akzeptieren, wenn es richtig ist. –

Antwort

1

Sie können es mit einem trunc(<date>, 'mm') (der den ersten Tag des Monats zurückgibt) und einem add_months(<date>,1) tun, die einen Monat zu einem bestimmten Tag hinzufügen. Also, um zu erfahren, wie viele Tage der Monat hat, in dem zur Zeit sind wir (das heißt sysdate), können Sie mit so etwas wie gehen könnte:

select 
    add_months(trunc(sysdate, 'mm'),1) - trunc(sysdate, 'mm') 
from 
    dual; 
+0

überprüfen Sie auch LAST_DAY, die Ihnen den letzten Tag des Monats gibt – regilero

+0

vielen Dank – user578332

1
select extract(day from last_day(sysdate)) from dual 

?

+0

vielen Dank – user578332

0

wählen DateDiff (Tag, GETDATE(), DateAdd (Monat, 1, GETDATE()))