[MySQL]Rozbudowane zapytanie mysql + sumowanie rekordów, jw |
[MySQL]Rozbudowane zapytanie mysql + sumowanie rekordów, jw |
20.03.2014, 20:00:34
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 004 Pomógł: 9 Dołączył: 18.01.2011 Skąd: Siedlce Ostrzeżenie: (30%) |
Witam, mam następujący problem: mam 2 tabele - w jednej id_zamowienia, a w drugiej produkty, które należą do tego zamówienia, mam takie zapytanie, które przypisuje ID zamówienia do produktów i ich cen, potrzbeuję zrobić takie zapytanie, które wyświetli mi ID_zamówienia i zsumowaną cenę wszystkich produktów, które należą do tego zamówienia.
mam tyle:
@@ edit, zapomniałem o tabelce z cenami produktów, już pobiera mi te dane, teraz potrzebuję tylko zrobić, żeby sumowało mi te dane a nie wyświetlało rekordy jeden pod drugim.. Ten post edytował miras 20.03.2014, 20:17:17 -------------------- |
|
|
20.03.2014, 20:16:25
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 519 Pomógł: 6307 Dołączył: 27.12.2004 |
GROUP BY oraz SUM
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
20.03.2014, 20:20:00
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 004 Pomógł: 9 Dołączył: 18.01.2011 Skąd: Siedlce Ostrzeżenie: (30%) |
Tyle już wygooglowałem, ale za cholerę nie moge użyć tego SUM w moim zapytaniu, czy kompletnie źle zacząłem budować te zapytanie?
Ok, już mam:
tak wygląda moje zapytanie, wszystko działa, potrzebuję jeszcze tylko dodać warunek taki:
jak to zrobić ? Ten post edytował miras 20.03.2014, 20:37:45 -------------------- |
|
|
20.03.2014, 20:46:03
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 335 Pomógł: 34 Dołączył: 9.11.2005 Skąd: Wrocław Ostrzeżenie: (10%) |
Kod SELECT Może coś takiego zadziała?o.id AS order, SUM(p.price * op.quantity) AS price FROM order o INNER JOIN order_product op ON op.id_order = o.id INNER JOIN product p ON p.id = op.id_product WHERE price > 1000 @edit: nie powinno się używać nazwy tabeli order Ten post edytował in5ane 20.03.2014, 20:51:04 -------------------- > > > Tworzenie stron < < <
|
|
|
20.03.2014, 20:51:36
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 004 Pomógł: 9 Dołączył: 18.01.2011 Skąd: Siedlce Ostrzeżenie: (30%) |
Niestety nie działa..
obecny kod:
kolumna cena normalnie jest, działa elegancko, ale jak zrobię tak:
to mi wywala: Something is wrong in your syntax obok 'WHERE cena>1000 LIMIT 0, 30' w linii 6 Ten post edytował miras 20.03.2014, 20:55:04 -------------------- |
|
|
21.03.2014, 08:04:30
Post
#6
|
|
Grupa: Moderatorzy Postów: 36 519 Pomógł: 6307 Dołączył: 27.12.2004 |
Zajrzyj do manuala mysql i zobacz jaka jest prawidlowa kolejnosc poszczegolnych rzeczy w zapytaniu.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
22.03.2014, 11:52:13
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 004 Pomógł: 9 Dołączył: 18.01.2011 Skąd: Siedlce Ostrzeżenie: (30%) |
No dobrze, ale jak zapytanie jest tak zbudowane:
to błąd: #1054 - Nieznana kolumna 'cena' w where clause -------------------- |
|
|
22.03.2014, 11:57:08
Post
#8
|
|
Grupa: Moderatorzy Postów: 36 519 Pomógł: 6307 Dołączył: 27.12.2004 |
Kominikat wyraznie mowi: nie masz kolumny cena
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
22.03.2014, 11:57:51
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 004 Pomógł: 9 Dołączył: 18.01.2011 Skąd: Siedlce Ostrzeżenie: (30%) |
no ok, rozumiem, myślałem, że to 'robi' za tą kolumnę: SUM( product.price * order_product.quantity ) AS cena
w takim razie jak mam to zrobić? -------------------- |
|
|
23.03.2014, 18:01:33
Post
#10
|
|
Grupa: Zarejestrowani Postów: 587 Pomógł: 190 Dołączył: 5.02.2011 Skąd: 64-800 Ostrzeżenie: (0%) |
Usuń WHERE cena > 1000
Dodaj na końcu HAVING cena > 1000 |
|
|
Wersja Lo-Fi | Aktualny czas: 20.09.2024 - 05:52 |