CREATE VIEW xxxx AS
SELECT order_date,
DATEPART(W, order_date) AS dayID,
Type
FROM dbo.Shipment_Dates
WHERE (TIP = 'normal')
OPTION (FAST 20)
此create语句会在寻线部分导致错误。是否有为视图添加提示的解决方法?
答案 0 :(得分:4)
您无法在视图中使用查询(OPTION)提示。
视图只是一个扩展的宏。然后查询提示将在扩展中 internal ,因为视图是子查询。子查询中不允许查询提示。
实际上,你有这个:
select
*
from
(
SELECT
order_date, DATEPART(W, order_date) AS dayID, Type
FROM dbo.Shipment_Dates
WHERE (TIP = 'normal')
option (fast 20) --not allowed
) WasAView
来自MSDN:
查询提示只能在顶级查询中指定,而不能在子查询中指定。
答案 1 :(得分:3)
不是在视图定义中指定提示,而是在使用视图时指定提示:
select order_date, dayID, Type
from xxxx
option (fast 20)