Hey kan iemand me helpen ??
Ik kan er niet aan uit ... ben al heel de dag aan t zoeken !
Ik probeer twee tabellen, de sum samen te tellen
Ik heb een tabel orders ; id , order_date ,
een tabel orders_bestel; id , order_id , qty , unit_price , vat_code
een tabel invoices; id , due_date ,
een tabel invoices_bestel;id , invoice_id , qty , unit_price , vat_code
nu wil ik de totalen samen tellen maar aan de hand van datum <= vandaag
als resultaat zou ik dan willen ; vb
YEAR | totalenOrders | totalenInvoices
2009 | 2550.50 | 1005.20
hier is een vb query die ik gemaakt heb
Dit is met UNION
[sql]
SELECT orders.order_date AS date, YEAR(orders.order_date) AS showyear,
SUM(orders_entrys.unit_price * orders_entrys.qty + (orders_entrys.unit_price * orders_entrys.qty/100 *orders_entrys.vat_code)) AS totalOrders
FROM orders
LEFT OUTER JOIN orders_entrys ON orders.id = orders_entrys.order_id
GROUP BY YEAR(orders.order_date)
HAVING date <= date(now())
UNION
SELECT invoices.due_date AS date, YEAR(invoices.due_date) AS showyear,
SUM(invoices_entrys.unit_price * invoices_entrys.qty + (invoices_entrys.unit_price * invoices_entrys.qty/100 *invoices_entrys.vat_code))
AS totalInvoices
FROM invoices
LEFT OUTER JOIN invoices_entrys ON invoices.id = invoices_entrys.invoice_id
GROUP BY YEAR(invoices.due_date)
HAVING date <= date(now())
[/sql]
Dit is met subquery
[sql]
SELECT orders.order_date AS date, YEAR(orders.order_date) AS showyear, tblInvoices.totalInvoices AS totalInvoices,
SUM(orders_entrys.unit_price * orders_entrys.qty + (orders_entrys.unit_price * orders_entrys.qty/100 *orders_entrys.vat_code)) AS totalOrders
FROM orders
LEFT OUTER JOIN orders_entrys ON orders.id = orders_entrys.order_id
LEFT OUTER JOIN invoices ON orders.id = invoices.order_id
LEFT OUTER JOIN
(SELECT
SUM(invoices_entrys.unit_price * invoices_entrys.qty + (invoices_entrys.unit_price * invoices_entrys.qty/100 *invoices_entrys.vat_code))
totalInvoices
FROM invoices_entrys)
AS tblInvoices
ON invoices.id = tblInvoices.invoice_id
GROUP BY YEAR(orders.order_date)
HAVING date <= date(now())
[/sql]
Kan iemand me helpen ?
Ik kan er niet aan uit ... ben al heel de dag aan t zoeken !
Ik probeer twee tabellen, de sum samen te tellen
Ik heb een tabel orders ; id , order_date ,
een tabel orders_bestel; id , order_id , qty , unit_price , vat_code
een tabel invoices; id , due_date ,
een tabel invoices_bestel;id , invoice_id , qty , unit_price , vat_code
nu wil ik de totalen samen tellen maar aan de hand van datum <= vandaag
als resultaat zou ik dan willen ; vb
YEAR | totalenOrders | totalenInvoices
2009 | 2550.50 | 1005.20
hier is een vb query die ik gemaakt heb
Dit is met UNION
[sql]
SELECT orders.order_date AS date, YEAR(orders.order_date) AS showyear,
SUM(orders_entrys.unit_price * orders_entrys.qty + (orders_entrys.unit_price * orders_entrys.qty/100 *orders_entrys.vat_code)) AS totalOrders
FROM orders
LEFT OUTER JOIN orders_entrys ON orders.id = orders_entrys.order_id
GROUP BY YEAR(orders.order_date)
HAVING date <= date(now())
UNION
SELECT invoices.due_date AS date, YEAR(invoices.due_date) AS showyear,
SUM(invoices_entrys.unit_price * invoices_entrys.qty + (invoices_entrys.unit_price * invoices_entrys.qty/100 *invoices_entrys.vat_code))
AS totalInvoices
FROM invoices
LEFT OUTER JOIN invoices_entrys ON invoices.id = invoices_entrys.invoice_id
GROUP BY YEAR(invoices.due_date)
HAVING date <= date(now())
[/sql]
Dit is met subquery
[sql]
SELECT orders.order_date AS date, YEAR(orders.order_date) AS showyear, tblInvoices.totalInvoices AS totalInvoices,
SUM(orders_entrys.unit_price * orders_entrys.qty + (orders_entrys.unit_price * orders_entrys.qty/100 *orders_entrys.vat_code)) AS totalOrders
FROM orders
LEFT OUTER JOIN orders_entrys ON orders.id = orders_entrys.order_id
LEFT OUTER JOIN invoices ON orders.id = invoices.order_id
LEFT OUTER JOIN
(SELECT
SUM(invoices_entrys.unit_price * invoices_entrys.qty + (invoices_entrys.unit_price * invoices_entrys.qty/100 *invoices_entrys.vat_code))
totalInvoices
FROM invoices_entrys)
AS tblInvoices
ON invoices.id = tblInvoices.invoice_id
GROUP BY YEAR(orders.order_date)
HAVING date <= date(now())
[/sql]
Kan iemand me helpen ?
Laatst bewerkt door een moderator: