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') select * from pocasi where datum>=date('2023-01-01') To datum si můžete vegenerovat poddotazem. jen si zkontrolujte v explain, zda ten poddotaz nedělá plánovač pro každý řádek (občasná chyba v mysql), pak budou rychlejší dotazy dva, nebo řešení s joinem jako v odkaze. |
||
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') 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
|
||
Časová prodleva: 2 roky
|
Toto vlákno je staré, již dlouho do něj nikdo nepřispíval.
Informace a odkazy zde uváděné už nemusejí být aktuální. Nechcete-li řešit zde uvedenou konkrétní otázku, založte si vlastní vlákno, nepište do tohoto. Vložíte-li sem nyní příspěvek, upoutáte pozornost mnoha lidí a někteří z nich si jen kvůli vám přečtou i všechny předcházející příspěvky. Předpokládáte-li, že váš text skutečně bude hodnotný, stiskněte následující tlačítko:
Běda vám, jestli to bude blábol.
0