Autor | Zpráva | ||
---|---|---|---|
BunnyBugs Profil * |
#1 · Zasláno: 23. 7. 2015, 20:24:29
Zdravím,
mám v databázi MySQL vytvořený sloupec (mimo jiné) z datem vložení. Jak mám automaticky vygenerovat odkazy dle jednotlivých roků? Jde o to, abych nemusel na každý rok ručně vytvářet odkaz. Vím, že to lze, ale nějak jsem nepřišel na to, jakým způsobem. Děkuji mockrát za nakopnutí. |
||
jzikes Profil * |
#2 · Zasláno: 23. 7. 2015, 20:35:50
Zdravím,
úplně nerozumím dotazu.. Vypisuješ nějakým cyklem data z db a podle data vložení jim přiřadit odkaz? -jz |
||
BunnyBugs Profil * |
#3 · Zasláno: 23. 7. 2015, 20:58:54
Ano, aby to vypadalo asi takhle:
....clanky2014, ....clanky2013, atd. A jednotlivé odkazy se vždy vygenerovaly automaticky dle roků, které v DB existují. |
||
jzikes Profil * |
#4 · Zasláno: 23. 7. 2015, 21:04:17
Jestli jsem to teda dobře pochopil, tak bych do toho cyklu jen přidal:
while ($vypis = MySQL_Fetch_Array($query)) { echo '<a href="xxx'.$vypis['Datum'].'">text odkazu..</a>'; } |
||
BunnyBugs Profil * |
#5 · Zasláno: 23. 7. 2015, 21:12:53
Aha, tak tohle vím, asi jsem položil otázku špatně.
Jak tedy dostanu do proměnné $query při výpisu z DB počet řádků dle roků? Jinak řečeno, když budu mít třeba 10 záznamů z roku 2010, 20 záznamů z roku 2011, tak aby mi to vypsal jen dva řádky? Jak by měl takový dotaz vypadat?
|
||
jzikes Profil * |
#6 · Zasláno: 23. 7. 2015, 21:26:36
Možná by to šlo udělat pomocí funkce GROUP BY..
|
||
BunnyBugs Profil * |
#7 · Zasláno: 23. 7. 2015, 21:30:09
Jojo, to mne napadlo a zkoušel jsem to, ale datum mám uložen v DB v plném formátu a nevím, jak do SELECTu dostat pouze rok :(
|
||
jzikes Profil * |
#8 · Zasláno: 23. 7. 2015, 21:37:56
No jestli máš date ve formátu třeba yyyy-mm-dd, tak použij EXPLODE se znakem '-' a pak jenom vlož pole[0].
|
||
BunnyBugs Profil * |
#9 · Zasláno: 23. 7. 2015, 21:49:29
Tak jsem to vyřešil asi nějak takhle:
SELECT DATE_FORMAT(datum, '%Y') as rok, count(*) pocet FROM table GROUP BY rok Snad je to tak dobře. |
||
Kcko Profil |
#10 · Zasláno: 23. 7. 2015, 21:50:14
Group by YEAR(datum)
|
||
BunnyBugs Profil * |
#11 · Zasláno: 23. 7. 2015, 21:57:06
Takhle mi to funguje, super, díky za nakopnutí.
Mám ale ještě jeden dotaz. Jak by měl SELECT vypadat, kdybych to chtěl seskupit v jiném časovém období, než je kalendářní rok? Třeba od 1.9.2014 do 30.4.2015 a takhle každý rok? Jedná se totiž o sezónu, která je v tomto časovém úseku.
|
||
mimochodec Profil |
#12 · Zasláno: 24. 7. 2015, 12:08:43
Nejjednodušší bude pro informaci o sezóně udělat další sloupec.
|
||
BunnyBugs Profil * |
#13 · Zasláno: 24. 7. 2015, 13:59:29
jj, takhle jsem to vyřešil, díky moc.
|
||
Časová prodleva: 9 let
|
0