sql >> Database >  >> RDS >> Sqlserver

@@DATEFIRST – Ontvang de eerste dag van de week in SQL Server

In SQL Server wordt de eerste dag van de week bepaald door de huidige taalinstellingen. Je kunt dat ook overschrijven met de SET DATEFIRST verklaring, waarmee u expliciet de eerste dag van de week kunt instellen.

In beide gevallen kunt u de @@DATEFIRST . gebruiken functie om erachter te komen welke instellingen uw sessie gebruikt voor de eerste dag van de week. Dit artikel laat zien hoe.

Syntaxis

De syntaxis is eenvoudig. Het gaat als volgt:

@@DATEFIRST

Voorbeeld

Hier is een gebruiksvoorbeeld.

SELECT @@DATEFIRST AS 'Result';

Resultaat:

+----------+
| Result   |
|----------|
| 7        |
+----------+

Dit vertelt me ​​dat de eerste dag van de week zondag is. Ik weet dit vanwege de volgende tabel.

Kaarten voor de eerste dag van de week

De volgende tabel laat zien hoe elke waarde is toegewezen aan een dag van de week.

Waarde Eerste dag van de week is
1 Maandag
2 Dinsdag
3 Woensdag
4 Donderdag
5 Vrijdag
6 Zaterdag
7 Zondag

Dus de retourwaarde van @@DATEFIRST wordt een tinyint tussen 1 en 7 .

Deze waarde wordt aanvankelijk bepaald door de huidige taalinstellingen, maar zoals vermeld, kunt u ook SET DATEFIRST gebruiken om de taalinstellingen te negeren.

Om te zien wat @@DATEFIRST instellingen toewijzen aan elke taal, hier is een lijst met alle talen en bijbehorende datumnotaties in SQL Server 2017.

U kunt ook de sp_helplanguage . gebruiken opgeslagen procedure om die lijst te retourneren. Zie hiervoor De datumnotaties vinden die worden gebruikt voor een specifieke taal in SQL Server (T-SQL).


  1. Geo-zoeken (afstand) in PHP/MySQL (prestaties)

  2. PostgreSQL unnest() met elementnummer

  3. ORA-00904 Ongeldige identifier” voor een identifier in een group by-clausule

  4. Datumbereik splitsen in één rij per maand in sql-server