SQL视图创建与索引优化全解析
1. 使用视图创建视图
使用视图创建视图和使用表创建视图一样简单,但存在一些缺点。使用视图创建的视图无法进行索引以加快执行速度,并且在调试或分析性能时会增加复杂性。以下是使用视图创建视图的具体步骤:
1. 打开 SQL Server Management Studio 的对象资源管理器,找到“视图”,右键单击并选择“新建视图”。在“添加表”对话框中,从“表”选项卡选择“SharePrices(ShareDetails)”。
2. 切换到“视图”选项卡,选择之前创建的视图(这里只有一个视图),点击“添加”,然后点击“关闭”。
3. 此时视图设计器会显示两个表,SQL 显示为 CROSS JOIN。CROSS JOIN 会将一个表中的每一行与另一个表中的每一行进行连接。
4. 我们希望在表和视图之间进行 INNER JOIN,以获取每个股票的所有股价。但由于 vw_CurrentShares 视图没有股票 ID 列,所以需要修改该视图。回到对象资源管理器,找到 vw_CurrentShares,右键单击并选择“设计”。
5. 在视图设计器中,点击 ShareId 列,将其添加到视图的最后一列。如果需要,可使用条件窗格移动该列。
6. 关闭对话框,在弹出的“保存更改”对话框中点击“是”保存修改。
7. 回到原始的视图设计器,此时可以看到视图中已添加了新列,无需刷新屏幕。
8. 通过拖动列的方式将两个表连接起来。点击 vw_CurrentShares 视图中的 ShareId 列,按住鼠标左键,将鼠标指针拖动到 ShareDetails.SharePrices 表中的 ShareId 列,然后释放鼠标。此时视图设计器