【问题标题】:Specify alias on join clause using QueryDSL使用 QueryDSL 在连接子句上指定别名
【发布时间】:2015-02-05 12:52:50
【问题描述】:

使用 QueryDSL 我会创建如下查询:

select * from cats as C join owners as O on ...

出于可读性原因,我会在连接子句中应用别名“O”,但 DSL 似乎不支持这一点:

query.from(cats.as("C")).join(owners.as("O")).on(...)

owners.as("O") 的类型与 join 子句预期的类型不兼容。

你有什么想法吗?

【问题讨论】:

    标签: java sql querydsl


    【解决方案1】:

    好的,您可以简单地使用别名创建它,而不是使用自动生成的静态表实例:

    Cat cat = new Cat("C");
    Owner owner = new Owner("O");
    query.from(cats).join(owners).on(...)
    

    【讨论】:

    • 变量名不应该是复数吗?
    【解决方案2】:

    你可以在Querydsl中使用别名

    QCat cat = new QCat("C");
    

    Querydsl Alias usage

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-04-22
      • 2021-07-04
      • 2018-07-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-26
      • 2010-09-26
      • 1970-01-01
      相关资源
      最近更新 更多