1、选取最适用的字段属性
数据库可以支持大数据量的存取,但是数据库中的表越小,在上面执行的查询就越快。所以可以将表中的字段宽度设置的尽可能小。
2、使用连接来代替子查询(Sub-Queries)
可以使用SELECT语句来创建一个单列的查询结果,然后把这个结果作为过滤条件用在另一个查询中。
3、使用联合(UNION)来代替手动创建的临时表。
数据库可以把需要使用临时表的两条或者更多的select查询合并到一个查询中。
4、事务
不是所有的数据库操作都可以只用一条或少数几条SQL语句就可以完成的。更多的时候是需要用到一系列的语句来完成某种工作。可以保持数据库中数据的完整性和一致性。
5、锁定表
由于在事务执行的过程中,数据库将会被锁定,因此其他的用户请求只能暂时等待直到该事务结束。有些情况下我们可以通过锁定表的放大来获得更好的性能。
6、使用外键
锁定表的方法可以保护数据的完整性,但是却不能保证数据的关联性。此时我们可以使用外键。
7、使用索引
使用索引索引可快速访问数据库表中的特定信息,可加快对表中记录的查找或排序操作,从而实现提升程序在数据库的查询效率。
8、其他
合理使用查询语句、减少无用数据积累、单表超百万数据分表、通过慢查询日志分析有故障可能的地方。