下面介绍可以使查询更快运行的优化技巧。
1.使用WHERE子句过滤行
许多初学者想要检索一行(或多行)数据时,他们会检索表中的所有行。这个非常浪费的。更好的方法是在查询中使用一个WHERE子句。这样,就要把检索的行限制为那些实际需要的行。
例如,需要获得顾客#1和#2的详细信息。下列查询检索store模式中customers表的所有行(浪费的方法)。
SELECT * FROM customers;
CUSTOMER_ID FIRST_NAME LAST_NAME
------------ ----------- ----------
1 CCCCCCCC CHARCHILL
2 AAAAAAAA CHARCHILL
3 BBBBBBBB CHARCHILL
...
下面把WHERE子句添加到前面的例子中,获得customer_id为1或2的行;
SELECT * FROM customers WHERE customer_id IN(1,2);
CUSTOMER_ID FIRST_NAME LAST_NAME
------------ ----------- ----------
1 CCCCCCCC CHARCHILL
2 AAAAAAAA CHARCHILL
注:WHERE子句中应避免使用函数,否则会增加执行时间。
2.使用表连接而不是多个查询
一般地,从多个相关表中检索数据时,应该使用连接条件而不应该使用多个查询。下列采用的方法较差,它使用量个查询获得产品#1的产品名称和产品类型名称(使用两个查询很浪费)。第一个查询获得products表中产品#1的name和product_type_id列值。然后,第二个查询使用这个product_type_id获得product_types表的name列。
SELECT name, product_type_id FROM products WHERE product_id = 1;
SELECT name FROM product_types WHERE product_type_id = 1;
分享到:
相关推荐
浅谈INFORMIX SQL优化.pdf
浅谈SQL Server数据库查询性能的优化.pdf
浅谈SQL server查询优化.pdf
浅谈SQL的查询优化技术.pdf
浅谈SQL Server的查询优化.pdf
浅谈SQL语句的优化对应用程序性能的影响.pdf
浅谈如何优化SQL Server服务器.pdf
浅谈如何优化SQL Server数据库.pdf
浅谈Oracle数据库SQL优化.pdf
浅谈SQL Server数据库应用程序的性能优化.pdf
浅谈如何优化SQL语句提高数据库系统效率.pdf
浅谈ORACLE中的SQL优化.pdf
浅谈SQL Server数据库查询性能的优化 (1).pdf
浅谈优化SQLServer数据库服务器内存.doc
浅谈优化SQL Server数据库服务器内存配置的.pdf
浅谈Oracle数据库SQL性能优化.pdf
浅谈Oracle SQL性能优化与云安全性策略.pdf
浅谈ORACLE数据库中的SQL优化原理与应用.pdf
浅谈对SQL数据库系统性能的优化.pdf
浅谈数据库中SQL语句的优化.pdf