zoukankan      html  css  js  c++  java
  • HQL链接查询

    和SQL查询一样,HQL也支持各种各样的连接查询,如内连接、外连接。我们知道在SQL中可通过join字句实现多表之间的连接查询。HQL同样提供了连接查询机制,还允许显示指定迫切内连接和迫切左外连接。HQL提供的连接方式如下表所示。

    //迫切内连接查询
    @Test
    public void test1() {
    Query query = session.createQuery("select distinct s from Pro s inner join fetch s.emps");
    List<Pro> list = query.list();
    for (Pro item : list
    ) {
    System.out.println(item.getProname());
    for (Emp itme1 : item.getEmps()
    ) {
    System.out.println(itme1.getEmpname());
    }
    }
    }
    //左外链接
    @Test
    public void test2() {
    Query query = session.createQuery("select distinct s from Pro s left outer join s.emps");
    List<Pro> list = query.list();
    for (Pro item : list
    ) {
    System.out.println(item.getProname());
    for (Emp itme1 : item.getEmps()
    ) {
    System.out.println(itme1.getEmpname());
    }
    }
    }
    //迫切左外链接
    @Test
    public void test3() {
    Query query = session.createQuery("select distinct s from Pro s left outer join fetch s.emps");
    List<Pro> list = query.list();
    for (Pro item : list
    ) {
    System.out.println(item.getProname());
    for (Emp itme1 : item.getEmps()
    ) {
    System.out.println(itme1.getEmpname());
    }
    }
    }
    //右链接
    @Test
    public void test4() {
    Query query = session.createQuery("select distinct s from Pro s right join s.emps");
    List<Pro> list = query.list();
    for (Pro item : list
    ) {
    System.out.println(item.getProname());
    for (Emp itme1 : item.getEmps()
    ) {
    System.out.println(itme1.getEmpname());
    }
    }
    }
  • 相关阅读:
    Keras如何构造简单的CNN网络
    到底该如何入门Keras、Theano呢?(浅谈)
    PyCharm使用技巧记录(一)如何查看变量
    使用 环境变量 来配置批量配置apache
    QT静态链接
    NTP服务器
    debian添加sudo
    龙芯8089_D安装debian 8 iessie
    verilog 双向IO实现
    FPGA入门学习第一课:二分频器
  • 原文地址:https://www.cnblogs.com/wyd12138/p/6380100.html
Copyright © 2011-2022 走看看