2
而不是在where子句中使用函數,我們可以做一些不同的事情。SQL優化,其中子句
使用DateAdd服用時間表現不佳我想..
如何優化這個SQL
SELECT cust_id, order_date, price
FROM customers
WHERE DATEADD(DD,50,order_date)>=GETDATE()
而不是在where子句中使用函數,我們可以做一些不同的事情。SQL優化,其中子句
使用DateAdd服用時間表現不佳我想..
如何優化這個SQL
SELECT cust_id, order_date, price
FROM customers
WHERE DATEADD(DD,50,order_date)>=GETDATE()
不要order_date
運行功能,在getdate()
代替
select cust_id, order_date, price
from customers
where order_date>=dateadd(Day,-50,getdate())
運行逆
order_date
上的函數調用將導致索引掃描,如果您改爲在篩選條件下運行您的函數getdate()
您可以在此列上保留索引查找。 (如果它有一個索引)。
這是更好的方式,性能明智嗎? – user1810575
是的,如果您在order_date列上創建索引。 – Murthy
其中order_date <= dateadd(Day,-50,getdate())或where order_date> = dateadd(Day,-50,getdate()) – user1810575