Próbuję połączyć 2 stoły razem i uzyskać liczbę kluczy obcych ... Przykro mi, ale tak naprawdę nie potrafię się wytłumaczyć, więc pozwól mi zademonstrować:
Mam 1 tabelę „zamówienia” dla zamówień z następującymi polami:
id, f_name, l_name, credit_card, ETC.
Następnie mam tabelę „zamówienia_detale” dla pozycji w zamówieniu, na przykład:
id, order_id, product_id, qty
Teraz chcę uruchomić zapytanie łączące 2 tabele, uzyskując 1 wiersz na każdy wiersz w tabeli zamówień, a kolumna mówi mi, ile produktów jest w każdym zamówieniu.
Czy ktoś wie jak to osiągnąć?
P.S. Chciałbym również móc uzyskać sumę wszystkich „ilości” dla zamówień (nie chcę uruchamiać osobnego zapytania dla każdego zamówienia).
Odpowiedzi:
10 dla odpowiedzi № 1SELECT o.id, o.f_name, o.l_name, COUNT(od.id), COALESCE(SUM(od.qty), 0)
FROM orders o
LEFT JOIN order_details od ON o.id = od.order_id
GROUP BY o.id, o.f_name, o.l_name