mysql pouze součet a max najít nejvyšší zaplacené faktury

hlasů
-1

Snažím se přijít na to, jak se dostat výsledek MAX o součet hodnot z tabulky, aby se zobrazil nejvyšší zaplacenou částku stvrzenky. Také jsem měl použít podvýběr, ale im stále zmateni. Zatím mi tento dotaz dostane vše, co potřebuji zobrazovat kromě maximální hodnoty. Toto je tabulka (faktura + OD) je třeba použít toto je to, co já jsem v současné době stále je to, co bych měl být stále

Kde mohu přidat MAX () (z součet)?

SELECT invoicenumber invoice
     , invoicedate date
     , SUM(orderqty*ordersell) AS 'Invoice Total' 
  FROM invoice 
  JOIN orderdetail 
    ON invoice.invoiceid = orderdetail.invoiceid 
 GROUP 
    BY invoice ;
Položena 07/11/2018 v 23:43
zdroj uživatelem
V jiných jazycích...                            


3 odpovědí

hlasů
0

Nevím, jestli je to blízko od toho, co jste hledali, ale myslím, že to bude fungovat (pokud jsem správně pochopil, co se snažíte dosáhnout).

SELECT inv.invoicenumber,
       inv.invoice, 
       inv.invoicedate AS 'Date',
       MAX((SELECT ord.orderqty+ord.ordersell FROM DUAL)) AS 'Invoice Total' 
  FROM invoice inv
  JOIN orderdetail ord
    ON inv.invoice.invoiceid = ord.orderdetail.invoiceid 
 GROUP BY inv.invoice, 
          inv.invoice, 
          inv.invoicedate;
Odpovězeno 08/11/2018 v 00:14
zdroj uživatelem

hlasů
0

Můžete zkusit (přidat k předchozí odpovědi):

SELECT invoicenumber AS invoice
 , invoicedate AS date
 , SUM(orderqty*ordersell) AS 'Invoice Total' 
FROM invoice 
JOIN orderdetail ON invoice.invoiceid = orderdetail.invoiceid 
GROUP BY invoicenumber,invoicedate ORDER BY `Invoice Total` DESC LIMIT 1;

Nemusí být příliš efektivní, ale vrátí pouze nejvyšší výsledek.

Odpovězeno 08/11/2018 v 00:08
zdroj uživatelem

hlasů
0

Pokud používáte SUM nebo MAX v SELECT, musíte GROUP BY dalších sloupcích:

SELECT invoicenumber AS invoice
 , invoicedate AS date
 , SUM(orderqty*ordersell) AS 'Invoice Total' 
FROM invoice 
JOIN orderdetail ON invoice.invoiceid = orderdetail.invoiceid 
GROUP BY invoicenumber,invoicedate;
Odpovězeno 07/11/2018 v 23:48
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more