SqlSkull

Funcția SQL EOMONTH() este o funcție de dată, care returnează ultima zi a lunii unei date specificate, cu un decalaj opțional.

SYNTAX

EOMONTH (Date, )
EOMONTH (Date, )

Date este o dată care este utilizată pentru a obține ultima zi a lunii.

Secundul argument offset este un număr întreg care specifică numărul de luni care se adaugă la dată.

Valoarea offset pozitivă returnează ultima zi a lunii următoare, iar valoarea offset negativă returnează ultima zi a lunii anterioare.

Să ne uităm la un exemplu de utilizare a funcției EOMONTH() în SQL Server.

Utilizarea funcției EOMONTH pentru a obține ultima zi a lunii pentru o anumită dată

Declarația următoare, utilizează funcția EOMONTH și returnează ultima zi a lunii pentru data dată.

DECLARE @orderdate AS DATETIMESET @orderdate ='1996-07-15 00:00:00.000' SELECT EOMONTH(@orderdate) AS 

După cum puteți vedea, se returnează o ultimă zi a lunii pentru data =’1996-07-15 00:00:00:00.000′. Aici nu furnizăm un decalaj, deoarece dorim doar ultima zi a datei date.

Utilizarea funcției EOMONTH pentru a obține ultima zi a lunii următoare de la data dată

Următoarea instrucțiune utilizează funcția EOMONTH și returnează ultima zi a lunii următoare de la data dată.

Aici am furnizat o valoare de decalaj 1, ceea ce înseamnă că luna EOMONTH adaugă 1 lună la data de intrare ‘1996-07-15 00:00:00:00.000’ și returnează ultima zi a lunii următoare.

DECLARE @orderdate AS DATETIMESET @orderdate ='1996-07-15 00:00:00.000' SELECT EOMONTH(@orderdate, 1) AS 

Puteți trece, de asemenea, orice valoare de decalaj pozitivă, cum ar fi 3, 4, etc., pentru a obține rezultatul dorit.

Utilizarea funcției EOMONTH pentru a obține ultima zi a lunii precedente de la data dată

În exemplul următor, prima instrucțiune utilizează funcția EOMONTH și returnează ultima zi a lunii precedente de la data dată, iar a doua instrucțiune returnează ultima zi a celei de-a treia luni precedente pentru data dată.

DECLARE @orderdate AS DATETIME

SET @orderdate ='1996-07-15 00:00:00.000' SELECT EOMONTH(@orderdate,-1) AS select EOMONTH(@orderdate,-3) as 

În prima instrucțiune am furnizat o valoare de decalaj care este -1 pentru a obține ultima zi a lunii precedente de la data ‘1996-07-15 00:00:00.000’ .

În a doua instrucțiune valoarea de decalaj este -3 pentru a obține ultima zi a lunii care este a treia lună precedentă de la data ‘1996-07-15 00:00:00.000’.

După cum puteți vedea, rezultatul primei declarații este ultima zi a lunii precedente, adică IUNIE, deoarece luna de la data curentă este IULIE, deci rezultatul este ‘1996-06-30’.
În mod similar, rezultatul celei de-a doua declarații este ultima zi a celei de-a treia luni anterioare, care este APRIL, deoarece luna dată de data curentă este IULIE, astfel încât cea de-a treia lună anterioară ar fi APRIL, iar ultima zi a lunii aprilie ar fi ‘1996-04-30’.
Dacă doriți doar o parte de zi din dată, atunci puteți folosi funcția DAY() pentru a obține doar ultima zi din dată.
DECLARE @orderdate AS DATETIMESET @orderdate ='1996-07-15 00:00:00.000' SELECT DAY(EOMONTH(@orderdate,-1)) AS select DAY(EOMONTH(@orderdate,-3)) as 
De asemenea, citiți…
.

.

SQL Basics Tutorial SQL Advance Tutorial SSRS Interviu Q & A
SQL Create table SQL Server Stored Procedure Create a New SSRS Project List Of SQL Server basics to Advance Level Interview Q & A
SQL ALTER TABLE SQL Server Merge Crearea unei surse de date partajate în SSRS Întrebare SQL Server &. Răspundeți la chestionar
SQL Drop SQL Server Pivot Creați un raport tabular SSRS / raport detaliat
….. Mai mult …. Mai mult ….More
Power BI Tutorial Azure Tutorial Python Tutorial SQL Server Sfaturi & Trucuri
Download and Install Power BI Desktop Create an Azure storage account Learn Python & ML Step by step Enable Dark theme în SQL Server Management studio
Conectați Power BI la SQL Server Încărcați fișierele în containerul de stocare Azure SQL Server Template Explorer
Crearea paginilor ToolTip ale rapoartelor în Power BI Crearea serverului de baze de date Azure SQL Afișarea numerelor de linie în fereastra editorului de interogări
….More ….More ….More

556 afișări totale, 10 afișări astăzi

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.