SQLite
 sql >> Baza danych >  >> RDS >> SQLite

Zdobądź pierwszy poniedziałek roku w SQLite

Możemy użyć funkcji DATE() SQLite'a funkcja zwracająca datę pierwszego wystąpienia danego dnia w danym roku. Dlatego możemy go wykorzystać do zwrotu w pierwszy poniedziałek danego roku. Możemy go również użyć do zwrotu w pierwszy wtorek, środę, czwartek, piątek itd.

Możemy użyć DATETIME() jeśli chcemy, aby została zwrócona wartość daty i godziny.

Przykład

SELECT DATE('2025-10-20', 'start of year', 'weekday 1');

Wynik:

2025-01-06

W takim przypadku pierwszy poniedziałek danego roku przypada w dniu 2025-01-06.

start of year i weekday 1 modyfikatory modyfikują datę podaną w pierwszym argumencie. Niedziela to 0, poniedziałek to 1, wtorek to 2 i tak dalej. Dlatego używamy wartości weekday 1 aby wybrać poniedziałek.

Pierwszy poniedziałek bieżącego roku

Oto przykład, który przedstawia proces z wykorzystaniem aktualnej daty:

SELECT 
    DATE('now') AS "Now",
    DATE('now', 'start of year') AS "Start of Year",
    DATE('now', 'start of year', 'weekday 1') AS "First Monday";

Wynik:

Now         Start of Year  First Monday
----------  -------------  ------------
2022-03-09  2022-01-01     2022-01-03  

Ten przykład pokazuje nam datę na każdym etapie jej modyfikacji. Używamy now aby zwrócić bieżącą datę, a następnie start of year aby przenieść go z powrotem na początek roku, a następnie weekday 1 aby przesunąć datę do przodu na pierwszy poniedziałek.

DATETIME() Funkcja

Możemy również użyć DATETIME() funkcja zrobić to samo. Różnica polega na tym, że zawiera część czasu:

SELECT DATETIME('2025-10-20', 'start of year', 'weekday 1');

Wynik:

2025-01-06 00:00:00

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak formatować liczby z wiodącymi zerami w SQLite

  2. Jak pobrać dwie odpowiedzi Json Json Object i Array

  3. Niezgodność typu danych (kod 20) podczas wstawiania

  4. SQLite Gdzie

  5. SQLite ISTNIEJE