Autor Zpráva
VINCENT
Profil *
omlouvam s za tento ******* nazev, ale nic jednodussiho me nanapadlo :(

mam problem, jak vyselectovat z db jakoby mnozinu udaju aby vysledek vypadal asi takto

pondeli
majales
diskoteka
utery
rozsvicka
zabava

proste aby udaje ktere mam vicekrat aby se robrazili pouze jednou a zbytek radku aby se normalne vypsal, jde to nejak pres ten dictinct rozumeji nez to mam ja?? select v selectu?? me se to zda tohle reseni spatne
VINCENT
Profil *
aha tak me se to udelalo spatne oprava

pondeli
---neco1
---neco2
---neco3
utery
---neco11
---neco21
nightfish
Profil
select den, akce from tabulka group by den
VINCENT
Profil *
jo jo diky moc zkusim to ...
VINCENT
Profil *
no je to ono ale zrejme se tam bude muset racovat jeste s nejakym polem protoze ja bych potreboval to i vypsat tzn skutecne aby vypis vypadal

pondeli
...neco1
...neco2
...neco3
utery
...neco11

takle se me vypise jen
pondeli
...neco1
utery
...neco11

diky za trpelivost
VINCENT
Profil *
tak jeste pro vetsi prehlednost posilam kod

----------------------------------------------------------------------
--
-- Struktura tabulky `preklady`
--

CREATE TABLE `preklady` (
`id` int(11) NOT NULL auto_increment,
`idf` varchar(250) NOT NULL,
`zkratka` char(2) NOT NULL default 'cz',
`preklad` text NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `zkratka` (`zkratka`,`idf`)
) ENGINE=MyISAM DEFAULT CHARSET=latin2 AUTO_INCREMENT=84 ;

--
-- Vypisuji data pro tabulku `preklady`
--

INSERT INTO `preklady` (`id`, `idf`, `zkratka`, `preklad`) VALUES (9, 'sprava prekladu', 'cz', 'Správa překladu admin centra'),
(8, 'sprava uzivatelu', 'en', 'User adminisration'),
(7, 'sprava uzivatelu', 'cz', 'Správa u?ivatelů'),
(4, 'administrace webu', 'cz', 'Administrace webu'),
(6, 'administrace webu', 'en', 'Web administration'),
(10, 'sprava prekladu', 'en', 'Languange administration'),
(11, 'grup', 'cz', 'Správa grup'),
(12, 'grup', 'en', 'Grup administration'),
(13, 'vyrobky', 'cz', 'Správa výrobků'),
(14, 'vyrobky', 'en', 'Product administration'),
(18, 'idf', 'en', 'idf (primari) text'),
(17, 'idf', 'cz', 'idf (primární) text'),
(19, 'jazyk', 'cz', 'jazyk'),
(20, 'jazyk', 'en', 'languange'),
(21, 'preklad', 'cz', 'překlad'),
(22, 'preklad', 'en', 'conversion'),
(23, 'preklad', 'it', 'conversione'),
(24, 'jazyk', 'it', 'lingua'),
(25, 'administrace webu', 'it', 'web amministrazione'),
(26, 'grup', 'it', 'Group amministrazione'),
(27, 'sprava prekladu', 'it', 'Cappello amministrazione'),
(28, 'idf', 'it', 'idf.(primario) capitolato'),
(29, 'sprava uzivatelu', 'it', 'Assegnatario amministrazione'),
(30, 'vyrobky', 'it', 'Prodotti'),
(31, 'ulozit', 'cz', 'Ulo?it'),
(32, 'ulozit', 'en', 'Save'),
(33, 'ulozit', 'it', 'Riporre'),
(34, 'vypis', 'cz', 'Výpis'),
(35, 'vypis', 'en', 'Statement'),
(36, 'vypis', 'it', 'Riversamento'),
(37, 'edit', 'cz', 'Editovat'),
(38, 'edit', 'en', 'Edit'),
(39, 'edit', 'it', 'Editore'),
(40, 'smazat', 'cz', 'Odstranit'),
(41, 'smazat', 'en', 'Delete'),
(42, 'smazat', 'it', 'Cancellare'),
(43, 'sprava jazyku', 'cz', 'Správa jazyků'),
(44, 'sprava jazyku', 'en', 'Administration languange'),
(45, 'sprava jazyku', 'it', 'Ago amministrazione'),
(46, 'odhlasit', 'cz', 'Odhlásit'),
(47, 'odhlasit', 'en', 'Loguot'),
(48, 'odhlasit', 'it', 'Disdire'),
(49, 'popis', 'cz', 'popis'),
(50, 'popis', 'en', 'description'),
(51, 'popis', 'it', 'leggenda'),
(52, 'zkratka', 'cz', 'zkratka'),
(53, 'zkratka', 'en', 'shortcut '),
(54, 'zkratka', 'it', 'abbreviamento'),
(55, 'uzivatel', 'cz', 'U?ivatel'),
(56, 'uzivatel', 'en', 'User'),
(57, 'uzivatel', 'it', 'Utenti'),
(58, 'pridat uzivatele', 'cz', 'přidat u?ivatele'),
(59, 'pridat uzivatele', 'en', 'add users'),
(60, 'pridat uzivatele', 'it', 'addizionare utente '),
(61, 'aktivni', 'cz', 'aktivní'),
(62, 'aktivni', 'en', 'active'),
(63, 'aktivni', 'it', 'attivo'),
(64, 'pozice', 'cz', 'pozice'),
(65, 'pozice', 'it', 'pisitura'),
(66, 'pozice', 'en', 'position'),
(67, 'heslo', 'cz', 'heslo'),
(68, 'heslo', 'en', 'password'),
(69, 'heslo', 'it', 'formula'),
(70, 'jmeno', 'cz', 'jméno'),
(71, 'jmeno', 'en', 'name'),
(73, 'zavrit okno', 'cz', 'Zavřít okno'),
(74, 'zavrit okno', 'en', 'close window'),
(75, 'zavrit okno', 'it', 'chiudere');


----------------------------------------------------------
a potrebuji udelat tento vypis :( uvádím jen nekolik řádek jinak ¨budu vypisovat celou tabulku
----------------------------------------------------------

zavrit okno - cz, en, it
jmeno - cz, en
pridat uzivatele - cz, en, it


proste dotaz ---- kolik je prekladu dostupných k sloupci idf a vypis je ------
nemuzu na to prijit ani s group by ani s group_concat
nightfish
Profil
<?php
$connect=mysql_connect("localhost");
mysql_select_db("test");
$result = mysql_query("select idf, zkratka from preklady order by idf");
$pole = array();
while ($data = mysql_fetch_row($result)) {
list($idf,$zkratka) = $data;
$pole[$idf][] = $zkratka;
}
foreach ($pole as $key => $value) {
echo $key." -- ";
echo implode(", ",$value);
echo "<br />";
}
mysql_close();
?>
MzM
Profil *
tohle umí nové MySQL, jinak přes PHPko vylistovat, zgrupovat a pokud se nemění slovíčko, přidávat sloupeček se zkratkou státu do seznamu. Pokud se slovíčko změní vypsat seznam států za slovíčko...
To nové mysql, GROUP_CONCAT(expr), zbytek viz manuál...
MzM
Profil *
..eee zpět, negrupovat, seřadit... sorry...
VINCENT
Profil *
super diky moc uz to funguje ten priklad od nightfish

for MzM nemohl bys prosim to jen strucne nacrtnout prave s touto funkci jsem to zkousel ale podle manualu me to nemakalo :( a sql nove mam díky za trpelivost
Toto téma je uzamčeno. Odpověď nelze zaslat.