zoukankan      html  css  js  c++  java
  • hibernate查询方式(四)

    ---恢复内容开始---

    1.mysql中的多表联合查询

      ****/*内连接查询*/  只显示两个表有关联的记录

    //第一种
    SELECT * FROM Class  c ,Student s WHERE  c.id=s.id;
    
    //第二种
    SELECT * FROM Class  c INNER JOIN Student s ON  c.id=s.id;
    

     ****/*左外链接*/   显示左边那个表的所有记录和右边表的关联记录

    SELECT * FROM Class  c LEFT INNER JOIN Student s ON  c.id=s.id;

    ****/*右外链接*/   显示右边那个表的所有记录和左边表的关联记录

    SELECT * FROM Class  c RIGHT INNER JOIN Student s ON  c.id=s.id;

     

    hql多表联合查询

       ****hql内连接语句

    //1.hql查询操作会使用Query对象
    //  (1)写sql语句 创建Query对象,
        String hql = "from Student c inner join c.setStudent";    //from后面是实体类名 c.学生类在班级类的属性名
       Query query = session.createQuery("hql");
    
    //(2)调用方法得到结果 返回的是数组
    List list = query.list();

       ****hql迫切内连接

    //1.hql查询操作会使用Query对象
    //  (1)写sql语句 创建Query对象,
        String hql = "from Student c inner join fetch c.setStudent";    //from后面是实体类名 c.学生类在班级类的属性名
       Query query = session.createQuery("hql");
    
    //(2)调用方法得到结果 返回的是对象
    List list = query.list();

        ****hql左外连接

    //1.hql查询操作会使用Query对象
    //  (1)写sql语句 创建Query对象,
        String hql = "from Student c left outer join c.setStudent";    //from后面是实体类名 c.学生类在班级类的属性名
       Query query = session.createQuery("hql");
    
    //(2)调用方法得到结果 返回的是数组
    List list = query.list();

       ****hql迫切左外连接

    //1.hql查询操作会使用Query对象
    //  (1)写sql语句 创建Query对象,
        String hql = "from Student c left outer join fetch c.setStudent";    //from后面是实体类名 c.学生类在班级类的属性名
       Query query = session.createQuery("hql");
    
    //(2)调用方法得到结果 返回的是对象
    List list = query.list();

    右外连接合左外链接一样 但是没有迫切右外连接

  • 相关阅读:
    2018 ACM 网络选拔赛 徐州赛区
    2018 ACM 网络选拔赛 焦作赛区
    2018 ACM 网络选拔赛 沈阳赛区
    poj 2289 网络流 and 二分查找
    poj 2446 二分图最大匹配
    poj 1469 二分图最大匹配
    poj 3249 拓扑排序 and 动态规划
    poj 3687 拓扑排序
    poj 2585 拓扑排序
    poj 1094 拓扑排序
  • 原文地址:https://www.cnblogs.com/alex96/p/8215304.html
Copyright © 2011-2022 走看看