skanuj0341 (2)

skanuj0341 (2)



PHP i MySQL dla każdeg:

PHP i MySQL dla każdeg:

Rysunek 12.6.

Zapytanie pobierające sumaryczną wartość zamówień


mysql> SELECT SUH(Cena ‘'Ilość') AS 'Wartość zamówień' -> FROM KsiazkiZamowienia;

I Wartość zamówień |

I    810.63 |

1 row in set (0.00 sec)

tabel Książki i KsiazkiZamowienia. Nie możemy też zapomnieć, że w tabeli Książki-Zamówienia w pojedynczym wierszu zapisana jest cena oraz liczba zamówionych książek, a zatem, podobnie jak w poprzednim przypadku, niezbędne będzie wymnożeniej tych wartości:

SELECT Id. 'Tytuł'. SUM(KsiazkiZamowienia.Cena * KsiazkiZamowienia.'Ilość') i AS 'Wartość zamówień'

FROM KsiazkiZamowienia. Książki

WHERE KsiazkiZamowienia.'KsiążkaId'=Ksiazki.Id

GROUP BY 'Książkald'

OROER BY 'Tytuł':

Dodatkowo wyniki zostały posortowane rosnąco względem kolumny Tytuł, tak jak jest to widoczne na rysunku 12.7. Oczywiście nic nie stoi na przeszkodzie, aby posortować wyniki względem kolumny Wartość zamówień, co będzie wymagało zastosowania klauzuli ORDER BY w postaci:

ORDER BY 'Wartość zamówień'

Rysunek 12.7.

Sumaryczna wartość zamówień dla każdego tytułu


mysql> SELECT Id. ]Tytuł',_SUM(KsiazkiZamowienia.Cena -> AS 'Wartość zamówień'

-> FROM KsiazkiZamowienia, Książki

-> WHERE KsiazkiZamowienia. 'KsiążkaId'=Ksiazki.Id

-> GROUP BY 'Książkald'

-> ORDER BY 'Tytuł';


KsiazkiZamowienia. 'Ilość')


I Id | Tytuł


| Wartość zamówień |


Bez pożegnania Dotyk zła Gra Endera Jeden fałszywy ruch Królewski skrytobójca

Misja Błazna Najczarniejszy strach The Limbreth Gate The Windsingers Uczeń skrytobójcy Uczeń skrytobójcy Wolf1s Brother Zadomowienie

rows in set (0.00 sec)

W tabeli wynikowej występuje dwukrotnie tytuł Uczeń skrytobójcy, gdyż w ofercie mamy tę książkę, wydaną przez dwa różne wydawnictwa (zwróćmy uwagę na to, że co prawda tytuł jest ten sam, ale identyfikator z kolumny Id — różny).

Znajdźmy teraz zamówienia i przypisane do nich tytuły, które zostały złożone, ale jeszcze nie zrealizowane. Tego typu zamówienia mają w polu Status wpisaną wartość 0. Trzeba będzie zatem wykonać złączenie tabel KsiazkiZamowienia, Książki i Zamówienia. Cała operacja zostanie wykonana za pomocą instrukcji:


Wyszukiwarka

Podobne podstrony:
22248 skanuj0206 (4) 218 PHP i MySQL dla każdego 218 PHP i MySQL dla każdego Rysunek 7.12. Widok for
skanuj0114 (20) 126 PHP i MySQL dla każdego Rysunek 4.17. Efekt działania funkcji array_count_values
skanuj0163 (9) 174 PHP i MySQL dla każdego Listing 6.12. Wykorzystanie funkcji strtok <?php $str

więcej podobnych podstron