转自:
要想写出高效的SQL 语句需要掌握一些基本原则,如果你违反了这些原则,一般情况下SQL 的性能将会很差。
1. 减少数据库访问次数
连接数据库是非常耗时的,虽然应用程序会采用连接池技术,但与数据库交互依然很耗时,这就要求我们尽量用一条语句干完所有的事,尤其要避免把SQL 语句写在循环中,如果你遇到这样的人,应该毫不犹豫给他两个耳光。2. 避免在有索引的字段上使用函数
在索引字段上使用函数会使索引失效,我们可以通过其他方式避免使用函数,如:尽量 避免在 SQL 语句的WHERE子句中使用函数3. 避免在 SQL语句中使用过程逻辑
通常开发人员思考问题喜欢采用过程逻辑,而SQL 语句操作的对象是集合,所以写 SQL 语句时时刻提醒自己不要采用过程逻辑,否则会写出非常拙劣的SQL。4. 采用乐观式SQL
通常,开发人员写程序时会先判断参数的有效性,然后执行一定的操作,而在访问数据库时,可以先执行SQL,然后,判断影响的行数,这样可以减少和数据库的交互。5. 将排序操作放到最后
排序操作非常耗时,通常,我们应该把所有不必要的记录都剔除后在进行排序操作,如果能不排序,尽量不要排序。