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

Zdobądź pierwszy poniedziałek miesiąca w SQLite

DATE() SQLite'a funkcja daje nam możliwość zwrócenia daty pierwszego wystąpienia danego dnia danego miesiąca. Dlatego możemy go wykorzystać do zwrotu w pierwszy poniedziałek danego miesiąca. 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 month', 'weekday 1');

Wynik:

2025-10-06

W takim przypadku pierwszy poniedziałek danego miesiąca przypada 06.10.2025.

start of month 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 miesiąca

Ten przykład przedstawia proces z wykorzystaniem aktualnej daty:

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

Wynik:

Now         Start of Month  First Monday
----------  --------------  ------------
2022-03-09  2022-03-01      2022-03-07  

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 month aby przenieść go z powrotem na początek miesiąca, 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 month', 'weekday 1');

Wynik:

2025-10-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. SQLite ALTER TABELA

  2. Testowanie jednostek bazy danych SQLite systemu Android

  3. Czy powinien istnieć jeden SQLiteOpenHelper dla każdej tabeli w bazie danych?

  4. SQLite LIKE

  5. IllegalStateException:baza danych już zamknięta (przy użyciu ViewPager)