Select v MySql
Karel Zak
zakkr na zf.jcu.cz
Středa Listopad 21 09:44:36 CET 2001
On Wed, Nov 21, 2001 at 08:57:13AM +0100, Jirka K. wrote:
> SELECT c_prod.id_prod, c_prod.nazov, c_ver.verzia FROM c_prod, c_ver WHERE
> c_ver .verzia=(SELECT c_ver.verzia, c_ver.datum FROM c_ver, c_prod WHERE
> c_ver.id_prod=c_prod.id_prod ORDER BY verzia DESC LIMIT 1,1)
> AND c_ver.id_prod=c_prod.id_prod
>
Vy to mate rad slozite a pomalu, coz? :-)
Je to typicka ukazka pouziti GROUP BY:
SELECT p.nazov, v.datum, max(v.verzia)
FROM c_ver v, c_prod p
WHERE v.id_prod=p.id_prod
GROUP BY p.nazov, v.datum;
Karel
>
> Kdyby jste potreboval jeste poradit, klidne se ozvete.
> S pozdravem Jirka K.
>
> > Mam problem. Je to sice v MySql, ale dufam ze mi poradite.
> > Mam 2 tabulky:
> > c_prod
> > -------
> > id_prod nazov
> > 01 nazov1
> > 02 nazov2
> > 03 nazov3
> > ........
> > =====================================
> > c_ver
> > -----
> > id_prod verzia datum
> > 01 1.70 12.12.2001
> > 01 1.74 13.12.2001
> > 02 1.95 12.12.2001
> > 03 1.50 10.10.2001
> > 01 1.80 13.10.2001
> > 02 1.96 12.10.2001
> >
> > Potrebujem vybrat vsetky produkty iba raz a to s najvyssou verziou a knej
> > prisluchajuci datum
> > id_prod nazov verzia datum
> > 01 nazov1 1.80 13.10.2001
> > 02 nazov2 1.96 12.10.2001
> > 03 nazov3 1.50 10.10.2001
> >
> > mozte mi poradit????
> >
> >
> >
>
--
Karel Zak <zakkr na zf.jcu.cz>
http://home.zf.jcu.cz/~zakkr/
C, PostgreSQL, PHP, WWW, http://docs.linux.cz, http://mape.jcu.cz
Další informace o konferenci Test