使用LEFT和RIGHT JOIN进行查询速度非常慢 - SQL Server CE

时间:2014-01-17 17:30:48

标签: sql performance sql-server-ce

我需要在日期之间查询付款记录。付款表与发票表有关,而发票表与客户表有关系。因此,即使已经删除的发票或客户记录,也必须显示所有付款记录。

要在1个月内获得少于50行,则需要超过1分钟的时间。任何想法如何减少时间?

这是我的代码段:

SELECT 
    C.name, I.id as id, P.amount, P.date 
FROM 
    tbl_customer C 
LEFT JOIN 
    tbl_inv I ON C.id = I.id_customer 
RIGHT JOIN 
    tbl_payment P ON I.id = P.id_invoice 
WHERE 
    P.date >= '20131201' AND P.date <= '20140101'
ORDER BY 
    P.date;

0 个答案:

没有答案