Autor | Zpráva | ||
---|---|---|---|
w4c Profil * |
#1 · Zasláno: 14. 4. 2022, 15:39:46
Zdravím, pořeboval bych pomoci s následujícím problémem. Mám DB (MYSQL) a v ní jsou dvě tabulky: 1) locations 2) temperatures Tabulky vypadají takto: ----------------------- ID name ----------------------- 1 Praha 2 Brno 3 Ostrava 4 Plzeň 5 Pardubice 6 Liberec ------------------------ --------------------------------------------------------- ID tempc humidity locationId Inserted --------------------------------------------------------- 1 10.00 86 1 2022-04-06 11:45:00 2 9.90 84 2 2022-04-06 12:00:00 3 10.00 84 3 2022-04-06 12:15:00 4 9.20 73 4 2022-04-06 12:30:00 5 10.10 84 5 2022-04-06 12:30:00 ... 10000 ... --------------------------------------------------------- chtěl bych vypsat průměrnou teplotu v jednotlivých dnech za každou destinaci. Napsal jsem si dotaz, který mi to vypíše po dnech a destinacích SELECT locations.name AS Locations, AVG(temperatures.tempc) AS Temp, DATE(temperatures.inserted) AS Days FROM temperatures INNER JOIN locations ON locations.ID = temperatures.locationId GROUP BY locations.name, DATE(temperatures.inserted) Já bych ale potřeboval, aby vypadal výpis takto: -------------------------------------------------------------------------- Day Praha Brno Ostrava Plzeň Pardubice Liberec -------------------------------------------------------------------------- 2022-04-06 11.5 12 11.6 12.1 12.1 9 2022-04-07 12.1 12.5 12.6 13.2 13.5 8.5 2202-04-08 11.7 11.3 11.8 12.3 13.2 10.2 Neumím převést řádky do sloupců. Je něco takového možné? Díky |
||
Kajman Profil |
Přímo v sql ne. Tabulku si vytvořte v aplikaci, např. v php. Data z řádků si dáte do paměti (pole) a cyklem jednotlivých měst a datumů si vyzobnete z paměti teplotu.
Dotaz by šel, jen pokud se města nemění a znáte je před sestavením dotazu. |
||
w4c Profil * |
#3 · Zasláno: 14. 4. 2022, 17:47:44
Kajman:
Díky, ale potřeboval bych dostat přímo z dozazu. Výsledek bych potřeboval vizualizovat v Grafaně. Města před sestavením znám, zkoušel jsem použít klauzuli CASE WHEN location.name = "Praha" THEN ...) AS Praha, ale asi jsem to nepochopil správně. |
||
Keeehi Profil |
#4 · Zasláno: 14. 4. 2022, 19:25:33
w4c:
Většinou stačí IF ale CASE jde taky použít. Uvažuješ o tom správně. Jen tam máš asi nějakou drobnou chybu. www.artfulsoftware.com/infotree/qrytip.php?id=78 |
||
Kajman Profil |
#5 · Zasláno: 15. 4. 2022, 09:23:18
w4c:
A proč si data netransformujete na sloupečky přímo v Grafaně? Měla by to umět. |
||
w4c Profil * |
#6 · Zasláno: 16. 4. 2022, 11:32:04
Pánové, díky za pomoc, už to mám.
|
||
Časová prodleva: 2 roky
|
0