Autor | Zpráva | ||
---|---|---|---|
Giga Profil |
#1 · Zasláno: 19. 3. 2023, 10:26:22
Pěknou neděli přeju :)
V tabulce mám záznamy o počasí. Chtěl bych vybrat ty záznamy, které jsou z posledního roku. Tedy něco jako: select * from pocasi where year(datum) = max(year(datum)) Ptám se jenom na realizovatelnost jedním dotazem. Dvěma dotazy to umím ;) Děkuji. |
||
Kajman Profil |
Některé časteji řešené dotazy pro MySQL - FAQ » Nalezení řádků s maximální (minimální) hodnotou
Ale pokud nemáte vytvořený index nad výsledkem funkce year, snažil bych se, aby výsledný dotaz vypadal jako select * from pocasi where datum>=date('2023-01-01') To datum si můžete vegenerovat poddotazem. select * from pocasi p where datum>=(select date(concat(year(max(m.datum)),'-01-01')) from pocasi m) |
||
Giga Profil |
Kajmane, díky.
Poddotaz se mi moc líbí a dělá to co chci. Fornulace dotazu select * from pocasi where datum>=date('2023-01-01') univerzálně použitelný na částkové tabulky (třeba do roku 2015) kde bych musel zjišťovat, kdy ty data končí. Děkuji. |
||
Kajman Profil |
#4 · Zasláno: 19. 3. 2023, 17:32:33
Omezení i na druhou hranici roku přeci není žádný problém přidat.
select * from pocasi where datum>=date('2015-01-01') AND datum<date('2016-01-01') |
||
Časová prodleva: 1 rok
|
0