代码之家  ›  专栏  ›  技术社区  ›  RV.

如何使用IN子句查询apacheignite

  •  -1
  • RV.  · 技术社区  · 6 年前

    ---------------------------------------------
    EmpId | EmpName | HomeZip | OfficeZip| Dept |
    ---------------------------------------------
    1     | Sam     | 98123   | 98123    |  A   |
    ---------------------------------------------
    2     | Jack    |  98123  | 98123    |  B   |
    ---------------------------------------------
    3     | John    |  98124  | 98123    |  A   |
    ---------------------------------------------
    4     | Kim     | 98124   | 98123    |  C   |
    ---------------------------------------------
    

    如何执行以下查询:

    • 查找A部门员工的所有详细信息。
    • 查找homeZip与OfficeZip相同的员工的所有详细信息。

    如何使用SQLQuery并将响应映射到模型类

    class Employee{
      private Integer empId;
      private String empName;
      private String homeZip;
      private String officeZip;
      private String dept;
    }
    

    //For finding out employee in list of departments
    SqlQuery sql = new SqlQuery(Employee.class, "dept in (?)).setArgs(deptList);
    //For finding out employee with same zip for office and home:
    SqlQuery sql = new SqlQuery(Employee.class, "homeZip = officeZip");
    
    1 回复  |  直到 6 年前
        1
  •  0
  •   RV.    6 年前

    点击链接: https://apacheignite-sql.readme.io/docs/performance-and-debugging#sql-performance-and-usability-considerations

        SqlFieldsQuery sql = new SqlFieldsQuery(
                        "select e.* from Employee e join table(dept varchar = ?) d on e.dept = d.dept")
                       .setArgs(new Object[]{deptList.toArray()});