除了使用INNER JOIN或索引来优化使用VIEW的查询
之外,还有一种有效的方法吗?CREATE VIEW tableView AS
SELECT A1, A2, B1 as Price, C1 as ItemNumber
FROM A, B, C
WHERE A.A1 = B.B1
AND A.A2 = C.C1;
查询示例
SELECT * FROM TableView WHERE Price = ‘100’ AND ItemNumber = 'R34';
答案 0 :(得分:4)
有效的方法是在基础表上使用适当的索引并对SQL Server进行一般调整。
没有特定于可以优化的视图(除了常规查询的相同一般问题 - 不使用导致表读取/索引扫描的函数与索引搜索等...)。
答案 1 :(得分:0)
如果你想避免表索引,因为数据存在于两个不同的表中,那么你可以创建一个schema bound view
,它允许你在composite index
子句的两列上创建sql where
(价格,ItemNumber)。