sql >> Databáze >  >> RDS >> Sqlserver

Klauzule WHERE pro vyhledání všech záznamů v konkrétním měsíci

Myslím, že funkce, kterou hledáte, je MONTH(date) . Pravděpodobně budete chtít použít 'YEAR' taky.

Předpokládejme, že máte tabulku s názvem things vypadá to nějak takto:

id happend_at
-- ----------------
1  2009-01-01 12:08
2  2009-02-01 12:00
3  2009-01-12 09:40
4  2009-01-29 17:55

A řekněme, že chcete spustit, abyste našli všechny záznamy, které mají happened_at v průběhu měsíce 2009/01 (leden 2009). SQL dotaz by byl:

SELECT id FROM things 
   WHERE MONTH(happened_at) = 1 AND YEAR(happened_at) = 2009

Což by se vrátilo:

id
---
1
3
4


  1. Co je špatného na mém dotazu SQL Fiddle?

  2. From Now() to Current_timestamp v Postgresql

  3. Jak nainstalovat MariaDB 10 na Debian a Ubuntu

  4. Jak napsat příkaz SQL s uvozovkami?