Autor | Zpráva | ||
---|---|---|---|
capricorn Profil |
#1 · Zasláno: 25. 4. 2011, 13:58:50
Zdravím, s návrhem tabulky by nebyl problém, ale já bych potřeboval v dotaze nebo v aplikaci seskupit řádky tak, aby se zbytecně nevypisovalo PO až NE na 7 řádků, když bude otevřeno např. NONSTOP, ale seskupilo se to na jeden řádek PO - NE - NONSTOP, i když v db bude těch řádku vždycky 7 pro každé id.
Zapsat to na jeden řádek do db jde také, ale já potřebuji pro každé id mít 7 dní, protože časy budou ve formatu time, abych s nima mohl pracovat. |
||
okolojdouci Profil * |
#2 · Zasláno: 25. 4. 2011, 14:01:08
capricorn:
„s návrhem tabulky by nebyl problém“ Takže řešíš přesně co? Tabulku navrženou máš nebo ne? |
||
capricorn Profil |
#3 · Zasláno: 25. 4. 2011, 14:27:07
okolojdouci:
Řeším to seskupení, jelikož v db mám: id, day, time_open, time_close, time_close_pause, time_open_pause 1, 1, 08:00:00, 18:00:00, NULL, NULL 1, 2, 08:00:00, 18:00:00, NULL, NULL 1, 3, 08:00:00, 18:00:00, NULL, NULL 1, 4, 08:00:00, 18:00:00, NULL, NULL 1, 5, 08:00:00, 18:00:00, NULL, NULL 1, 6, 10:00:00, 18:00:00, NULL, NULL 1, 7, NULL, NULL, NULL, NULL 2, 1, 08:00:00, 18:00:00, 12:00:00, 13:00:00 2, 2, 08:00:00, 18:00:00, 12:00:00, 13:00:00 2, 3, 08:00:00, 18:00:00, 12:00:00, 13:00:00 2, 4, 08:00:00, 18:00:00, 12:00:00, 13:00:00 2, 5, 08:00:00, 18:00:00, 12:00:00, 13:00:00 2, 6, 10:00:00, 18:00:00, NULL, NULL 2, 7, NULL, NULL, NULL, NULL 3, 1, 00:00:00, 24:00:00, NULL, NULL 3, 2, 00:00:00, 24:00:00, NULL, NULL 3, 3, 00:00:00, 24:00:00, NULL, NULL 3, 4, 00:00:00, 24:00:00, NULL, NULL 3, 5, 00:00:00, 24:00:00, NULL, NULL 3, 6, 00:00:00, 24:00:00, NULL, NULL 3, 7, 00:00:00, 24:00:00, NULL, NULL 4, 1, 08:00:00, 18:00:00, NULL, NULL 4, 2, 08:00:00, 18:00:00, NULL, NULL 4, 3, 08:00:00, 18:00:00, 12:00:00, 13:00:00 4, 4, 08:00:00, 18:00:00, NULL, NULL 4, 5, 08:00:00, 18:00:00, NULL, NULL 4, 6, 10:00:00, 18:00:00, NULL, NULL 4, 7, NULL, NULL, NULL, NULL A já potřebuji vypsat v aplikaci: Pro id 1 Po - Pá - 8.00 - 18.00 So - 10.00 - 18.00 Ne - zavřeno Pro id 2 Po - Pá - 8.00 - 18.00 - přestávka 12.00 - 13.00 So - 10.00 - 18.00 Ne - zavřeno Pro id 3 Po - Ne - NONSTOP Pro id 4 Po - 8.00 - 18.00 Út - 8.00 - 18.00 St - 8.00 - 18.00 - přestávka 12.00 - 13.00 Čt - 8.00 - 18.00 Pá - 8.00 - 18.00 So - 10.00 - 18.00 Ne - zavřeno atd. pro různé kombinace. |
||
okolojdouci Profil * |
#4 · Zasláno: 25. 4. 2011, 14:34:49
capricorn:
To uděláš jen v php. Vytáhni si data do pole, otestuj podle kritérií, která tě zajímají a podle nich vytvoř výsledný výstup. Příklad: 1. z databáze do pole 2. mají všechny dny hodnoty 00:00:00, 24:00:00, NULL, NULL? 3. ano-li, $vystup= "Po - Ne - NONSTOP"; 4. mají všechny dny stejný čas? 5. ano-li, $vystup= "Po - Ne - ".$od."-".$do; atd. |
||
Joker Profil |
#5 · Zasláno: 25. 4. 2011, 15:50:41
ad okolojdouci, když už, tak takhle:
- Načíst data, seřadit podle id a dnu - Vytvoří se pole den_od, den_do, text tak, že pro každý den: - - Sestaví se text, všechny hodnoty prázdné (null) by se přeložily jako zavřeno, hodnoty 00:00:00, 24:00:00, NULL, NULL jako nonstop. - - Jestliže není první den a text je shodný s textem předchozího záznamu v poli, jen se předchozímu záznamu nastavý daný den do den_do a nic se nepřidává - - Jinak se ten záznam přidá na konec pole (den_od = daný den, den_do = nic, text = text) - Vypíše se pole přes foreach: den_od, pokud den_do není prázdný tak pomlčka a den_do, text. |
||
capricorn Profil |
#6 · Zasláno: 25. 4. 2011, 16:08:07
Joker:
Menší příklad by nebyl? |
||
Časová prodleva: 13 let
|
0