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();

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

  • 相关阅读:
    前端安全【面试】
    防xss攻击
    前端工程化
    前端项目构建——运维
    react入门
    OpenGL Windows 窗口程序环境搭建
    Django 列的自定义显示
    设计模式之 SOA面向服务的体系
    设计模式之Builder建造者模式 代码初见
    设计模式之Factory工厂模式的好处
  • 原文地址:https://www.cnblogs.com/alex96/p/8215304.html
Copyright © 2011-2022 走看看