针对这种情况,人工智能自动SQL优化工具应运而生。现在我就向大家介绍这样一款工具:SQL Tuning for SQL Server。 1. SQL Tuning 简介
SQL Turning 是Quest公司出品的Quest Central软件中的一个工具。
Quest Central(图1)是一款集成化、图形化、跨平台的数据库管理解决方案,可以同时管理 Oracle、DB2 和 SQL server 数据库。它包含了如下的多个工具: 1.数据库管理(DBA) 2.数据库监控(Monitoring Pack) 3.数据库诊断 (Spotlight Diagnostics) 4.数据库分析 (Database Analysis) 5.SQL优化 (SQL Tuning) 6.空间管理 (Space Management) 7.压力测试 (Load Generator) 8.数据生成 (Data Generator) 9.PL/SQL 开发 (TOAD) 10.专家建议 (Knowledge Expert)
今天,我们只介绍其中的SQL优化 (SQL Tuning for SQL Server) 的使用方法。
图1
quest central界面 2. 使用SQL Tuning 优化SQL
下面我们用SQL Server自带的Northwind数据库为例,帮助大家了解如何使用SQL Tuning优化SQL。
(1)建立连接。
在Quest Central主界面上的“Database”树上选择“SQL Server”,然后在下方出现的“Tools”框中选择“SQL Tuning”选项,打开“Lanch SQL Tuning for SQL Server Connections”对话框(图2)。我们在这里建立数据库服务器的连接,以后的分析工作都会在它上面完成。
图2 “建立连接”对话框
双击“New Connection”图标,在弹出窗口中输入数据库的信息,单击“OK”,然后单击“Connect”即可。
(2)分析原始SQL语句 。
在打开窗口的“Oriangal SQL”文本框内输入需要分析的原始SQL语句,代码如下:
/*查询卖出价个不同的同一货物名称*/ select DISTINCT c.CompanyName,p.ProductName from [Order Details] od1,[Order Details] od2 , Orders o1 , Orders o2,Customers c, Products p where od1.UnitPrice<>od2.UnitPrice and od1.ProductID=od2.ProductID and od1.OrderID=o1.OrderID and od2.OrderID=o2.OrderID and o1.CustomerID=o2.CustomerID and o1.CustomerID=C.CustomerID