暂无 |

7 使用暂时表格

在执行比较复杂的查询工作时,在一个查询叙述中,可能会有结合查询、子查询和其它复杂的判断条件。一个看起来比较长而且比较复杂的查询,效率并一定比较不好。不过你可以使用一些比较特别的方式,进一步改善查询的复杂度与效率。以下列的查询来说:

mysql_20_snap_23

上列的查询是一个不算太复杂的结合查询,如果还要在加上其它的条件判断的话,看起来就会更长一些:

mysql_20_snap_24

如果还要再结合另外一个表格的话,这个查询看起来就真的很复杂了:

mysql_20_snap_25

上列的查询看起来虽然复杂,不过如果都有可以使用的索引,它执行的效率也会是不错的。如果在查询工作中,很常使用第一个查询的结果,再加上不同的条件或结合,你就可以考虑使用下列的叙述,先建立好一个暂时的表格:

mysql_20_snap_26

因为查询的结果已经储存在「countrycapital」表格中,所以要加入其它的条件就变得简单多了:

mysql_20_snap_27

如果要再结合另外一个表格的话,也会比较容易:

mysql_20_snap_28

在「第九章、子查询、FROM子句与子查询」讨论到可以把一个查询放在「FROM」子句中:

mysql_20_snap_29

使用这样的方式虽然可以得到一样的查询结果,不过在你很常使用上列子查询来增加条件的情况下,每次执行不同条件的查询,资料库都要重新执行子查询叙述;先建立暂时的表格,再使用暂时表格执行查询的作法会是比较有效率的。

0

java教程
php教程
php+mysql教程
ThinkPHP教程
MySQL
C语言
css
javascript
Django教程

发表评论

    评价:
    验证码: 点击我更换图片
    最新评论