zoukankan      html  css  js  c++  java
  • MySQL关联查询

        

    MySQL关联查询的三种写法:

    SELECT * FROM film JOIN film_actor ON (film.film_id = film_actor.film_id);
    SELECT * FROM film JOIN film_actor USING (film_id);  --当两个要关联表的字段名是一样时,可以使用USING()
    SELECT * FROM film, film_actor WHERE film.film_id = film_actor.film_id;

    优化关联查询:

    1.确保ON或者USING子句中的列上有索引。在创建索引的时候就要考虑到关联顺序。一般来说,除非有其他理由,否则只需要在关联顺序中的第二个表的相应列上创建索引。比如当表film和表film_actor用列film_id关联的时候。如果优化器的关联顺序是film_actor、film 那么就不需要在film_actor表的film_id列上加索引了。

    2.确保任何的GROUP BY 和ORDER BY 中的表达式只涉及到一个表中的列,这样MySQL才有可能使用索引来优化这个过程。

    3.当升级MySQL的时候需要注意:关联语法、运算符优先级等其他可能会发生变化的地方。因为以前的是普遍关联的地方可能会变成笛卡尔积,不同类型的关联可能会生成不同的结果等。

  • 相关阅读:
    shiro3
    shiro2
    shiro1
    Android设计模式之策略模式
    Notify通知
    Menu菜单
    Windows下配置cygwin和ndk编译环境
    Android组件化和插件化开发
    android MVP模式介绍与实战
    实现LoaderCallbacks接口动态循环加载网上图片并展示在手机屏幕上 ...
  • 原文地址:https://www.cnblogs.com/heyhey/p/7837197.html
Copyright © 2011-2022 走看看