--测试表及数据
CREATE TABLE tb(Col varchar(10))
INSERT tb SELECT '12'
UNION ALL SELECT 'aa'
GO
--观察Transact-SQL语句的执行计划,而不是执行
SET SHOWPLAN_ALL ON
GO
SELECT * FROM tb
WHERE ISNUMERIC(Col)=1
AND Col BETWEEN 1 AND 100
GO
SET SHOWPLAN_ALL OFF
GO
--建立索引
CREATE INDEX IDX_tb_Col ON tb(Col)
GO
SET SHOWPLAN_ALL ON
GO
SELECT * FROM tb
WHERE ISNUMERIC(Col)=1
AND Col BETWEEN 1 AND 100
GO
SET SHOWPLAN_ALL OFF
GO
--删除测试
DROP TABLE tb
CREATE TABLE tb(Col varchar(10))
INSERT tb SELECT '12'
UNION ALL SELECT 'aa'
GO
--观察Transact-SQL语句的执行计划,而不是执行
SET SHOWPLAN_ALL ON
GO
SELECT * FROM tb
WHERE ISNUMERIC(Col)=1
AND Col BETWEEN 1 AND 100
GO
SET SHOWPLAN_ALL OFF
GO
--建立索引
CREATE INDEX IDX_tb_Col ON tb(Col)
GO
SET SHOWPLAN_ALL ON
GO
SELECT * FROM tb
WHERE ISNUMERIC(Col)=1
AND Col BETWEEN 1 AND 100
GO
SET SHOWPLAN_ALL OFF
GO
--删除测试
DROP TABLE tb
本文通过展示SQL语句的执行计划、建立索引、并观察查询性能变化,深入探讨了SQL查询优化和索引使用策略。通过具体示例,详细解释了如何通过调整查询条件、使用合适的数据类型和创建索引来提升数据库查询效率。
4万+

被折叠的 条评论
为什么被折叠?



