首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Ebeans rawsql中不工作的Sql列别名

在Ebeans rawsql中不工作的Sql列别名
EN

Stack Overflow用户
提问于 2016-03-25 12:30:23
回答 1查看 314关注 0票数 0

我在原始SQL中遇到了一些奇怪的问题,我需要一些帮助才能找到修复它的最佳方法。当然,我可以添加columnMappings,但我想确保这不是因为我做错了什么。

  • 播放框架应用程序
  • Ebeans ORM
  • Postgresql 9.,4

如果我没有定义RawSQL,那么对Postgresql数据库执行以下columnMappings失败,尽管我定义了一个别名:

代码语言:javascript
复制
    String sql
            = "  Select date_trunc('day', end_time) as theDate,  "
            + "  count(*) as value "
            + "  From ebay_item "
            + "  group by date_trunc('day', end_time) ";

    RawSql rawSql =
            RawSqlBuilder
                    .parse(sql)
                    .create();

错误:

016-03-25 12:05:15,303错误m.c.a.e.s.p.SimpleDBPromiseService -执行命名查询javax.persistence.PersistenceException: Property dateTrunc(在m.c.a.e.s.p.SimpleDBPromiseService上找不到‘day’)的错误

如果我切换到一个H2数据库:

代码语言:javascript
复制
    String sql
            = " SELECT trunc(end_time) as theDate, "
            + "  count(*) as value "
            + "  From ebay_item "
            + "  Group by trunc(end_time)";

    RawSql rawSql =
            RawSqlBuilder
                    .parse(sql)
                    .create();

没什么问题。

任何建议都会很感激的。

EN

回答 1

Stack Overflow用户

发布于 2016-05-26 15:05:16

我不认为mysql喜欢按函数分组或排序,您应该使用别名"theDate“来代替。

注意,如果要映射到bean对象,则别名必须是要由Ebean映射的bean的@瞬态属性(否则,您将得到一个未知的属性错误)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36219976

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档