Condividi tramite


EOMONTH (Transact-SQL)

Si applica a: SQL Server Database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics Piattaforma di strumenti analitici (PDW)

Questa funzione restituisce l'ultimo giorno del mese contenente una data specificata, con una differenza facoltativa.

Suggerimento

In SQL Server 2022 (16.x) e versioni successive è possibile usare DATETRUNC per calcolare l'inizio del mese.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

EOMONTH ( start_date [ , month_to_add ] )

Argomenti

start_date

Espressione date che specifica la data per cui restituire l'ultimo giorno del mese.

month_to_add

Espressione Integer facoltativa che specifica il numero di mesi da aggiungere a start_date.

Se l'argomento month_to_add ha un valore, EOMONTH aggiunge il numero di mesi specificato a start_date, quindi restituisce l'ultimo giorno del mese della data risultante. Se questa aggiunta supera l'intervallo valido di date, EOMONTH genera un errore.

Tipi restituiti

date

Osservazioni:

La EOMONTH funzione può essere remota alle istanze che eseguono SQL Server 2012 (11.x) e versioni successive. Non può essere remoto alle istanze con una versione precedente a SQL Server 2012 (11.x).

Esempi

R. EOMONTH con tipo datetime esplicito

DECLARE @date DATETIME = '12/1/2024';

SELECT EOMONTH(@date) AS Result;
GO

Il set di risultati è il seguente.

Result
------------
2024-12-31

B. EOMONTH con parametro di tipo stringa e conversione implicita

DECLARE @date VARCHAR(255) = '12/1/2024';

SELECT EOMONTH(@date) AS Result;
GO

Il set di risultati è il seguente.

Result
------------
2024-12-31

C. EOMONTH con e senza il parametro month_to_add

I valori illustrati in questi set di risultati rispecchiano una data di esecuzione inclusa tra 12/01/2024 e 12/31/2024 inclusi.

DECLARE @date DATETIME = '2024-12-31';

SELECT EOMONTH(@date) AS 'This Month';
SELECT EOMONTH(@date, 1) AS 'Next Month';
SELECT EOMONTH(@date, -1) AS 'Last Month';
GO

Il set di risultati è il seguente.

This Month
-----------------------
2024-12-31

Next Month
-----------------------
2025-01-31

Last Month
-----------------------
2024-11-30