0
我通常使用ORM,而不是SQL,我稍稍脫節對不同的連接...優化(我的)SQL查詢
SELECT `order_invoice`.*
, `client`.*
, `order_product`.*
, SUM(product.cost) as net
FROM `order_invoice`
LEFT JOIN `client`
ON order_invoice.client_id = client.client_id
LEFT JOIN `order_product`
ON order_invoice.invoice_id = order_product.invoice_id
LEFT JOIN `product`
ON order_product.product_id = product.product_id
WHERE (order_invoice.date_created >= '2009-01-01')
AND (order_invoice.date_created <= '2009-02-01')
GROUP BY `order_invoice`.`invoice_id`
表/列在邏輯上是名字......這是一個商店類型的應用程序...查詢工作...它只是非常非常慢...
我使用Zend框架,通常會使用Zend_Db_Table_Row::find(Parent|Dependent)Row(set)('TableClass')
,但我必須做大量的連接,我認爲它會提高性能全部在一個查詢中而不是數百個...
我可以改進上面的查詢通過使用更合適的JOIN或不同的實現?非常感謝。