Autor Zpráva
WertriK
Profil
Zdravím všechny,
už druhý den si lámu hlavu s docela prostým dotazem, který ovšem nějsem schopný přinutit aby dělalt to co bych přesně chtěl.
Mám v mysql dvě tabulky inzeráty (ad_advert) a objednávky (ad_order), každý inzerát obsahuje mimojiné id objednávky (id_order).
Mám jednoduché hledání, kt. podle základních kritérií zobrazí požadové inzeráty. Problém, je pro mne, zobrazení inzerátů jako objednávek - samotné zobrazení ne. Přesněji - potřebuju spočítat všechny objednávky, kt. odpovídají těm parametrům.
Tj. Najít v ad_advert příslušné inzeráty - GROUP BY id_order - a spočítat kolik jich je. Jenže jak je spočítat ? Toť můj problém.

ad_advert - uvedu to podstatné
id
id_order

ad_order
id

Použiju-li
SELECT ao.id
FROM ad_order AS ao, ad_advert AS aa
WHERE aa.id_user =2
AND ao.id = aa.id_order
GROUP BY aa.id_order

Vypíše mi pěkně všechny id odpovídajích objednávek. Jak spočítat kolik těch id(řádků) to vyplivlo ?

SELECT COUNT(ao.id)
FROM ad_order AS ao, ad_advert AS aa
WHERE aa.id_user =2
AND ao.id = aa.id_order
GROUP BY aa.id_order

Mi vypíše k jednotlivým objednávkám, počet inzerátů, což zrovna nepotřebuji.

Tento SELECT tvoří poddotaz, takže mi to plivne, že subdotaz vrátil více než jeden řádek.
Zkoušel jsem kde co, ale opravdu, přiznám se, nevím jak na to.

Za každou radu, díky.
Kajman_
Profil *
SELECT COUNT(distinct aa.id_order)
FROM ad_order AS ao, ad_advert AS aa
WHERE aa.id_user =2
AND ao.id = aa.id_order
WertriK
Profil
Děkuji.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0