Autor Zpráva
Jan Žák
Profil
Dobrý den všem,

chtěl bych Vás požádat o pomoc či radu s následujícím příkazem. Z db si tahám záznamy o nabídce, faktruře a dalších, které náleží k zakázce. Na webu si pak vypisuji sledování zakázky, kde pod sebou mám jednotlivé položky seřazené dle data. Funguje dobře s jedním ale. Mám 4 faktury, které spadají k zakázce, ale jen jednu nabídku. Tato nabídka se ale duplikuje ke všem 4 fakturám, což nechci. Uměl by někdo poradit, jak zobrazit jednu nabídku a čtyři faktury pod ní?

SELECT 
    c.id, c.contract_number, c.recipient, c.start_plan,
    co.id, co.company_name,
    of.id AS of_id, of.date_issue AS of_date, of.product_total AS of_total,
    od.id AS od_id, od.date_issue AS od_date, od.product_total AS od_total,
    so.id AS so_id, so.date_issue AS so_date, so.product_total AS so_total,
    iv.id AS iv_id, iv.date_issue AS iv_date, iv.product_total AS iv_total
FROM 
    contracts AS c
LEFT JOIN 
    company AS co ON co.id = c.recipient
LEFT JOIN 
    offers AS of ON of.contract_id = c.id
LEFT JOIN 
    orders AS od ON od.contract_id = c.id
LEFT JOIN 
    shipping_orders AS so ON so.contract_id = c.id
LEFT JOIN 
    invoice AS iv ON iv.contract_id = c.id
WHERE 
    c.id = $id

anonym_
Profil *
Jan Žák:
Nejsem DB specialista, ale řešení na úrovni aplikace je snadné (pamatovat si poslední nabídku a kontrolovat s aktuální - jsou stejne, podruhé ji nevypisuj, jsou různé, vypiš ji).
Kajman
Profil
Nebo necpat vše do jednoho dotazu.
Srovnání dotazů do závislých tabulek

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0