Problem:
Du vill få dagen från ett datumfält i en SQL Server-databas.
Exempel:
Vår databas har en tabell som heter MedicalVisit med data i kolumnerna Id, FirstName , LastName och VisitDate .
| Id | Förnamn | Efternamn | Besöksdatum |
|---|---|---|---|
| 1 | Jane | Miller | 2019-11-17 |
| 2 | Alex | Smith | 2019-11-20 |
| 3 | William | Brun | 2019-11-20 |
| 4 | Alice | Thomas | 2019-11-05 |
För varje patient, låt oss hitta dagen för läkarbesöket. Vi hämtar det från VisitDate fältet.
Lösning:
Vi använder DAY() fungera. Här är frågan du skulle skriva:
SELECT First_name,
Last_name,
DAY(VisitDate) AS VisitDay
FROM MedicalVisit;
Här är resultatet av frågan:
| Förnamn | Efternamn | Besöksdag |
|---|---|---|
| Jane | Miller | 17 |
| Alex | Smith | 20 |
| William | Brun | 20 |
| Alice | Thomas | 5 |
Diskussion:
Om du vill få en dag från ett datum i en tabell, använd SQL Server DAY()-funktionen. Denna funktion tar bara ett argument – datumet. Detta kan vara en datatyp för datum eller datum och tid. (I vårt exempel, kolumnen VisitDate är av datumet datatyp.) Argumentet kan vara ett kolumnnamn eller ett uttryck. (I vårt exempel är det VisitDate kolumn.)
DAY() returnerar numret på dagen i månaden som ett heltal från 1 till 31. För Alice Thomas’ besök, dagen är 5; vi får det från ÅÅÅÅ-MM-DD-datumet "2019-11-05".