【问题标题】:Hibernate createSQLQuery. How to get boolean休眠创建SQLQuery。如何获得布尔值
【发布时间】:2014-08-10 20:38:55
【问题描述】:
session.createSQLQuery("SELECT EXISTS 
(SELECT 1 FROM master.invoices WHERE currency_id = 17879)").list()

给我 BigInteger。 我怎样才能得到布尔值?

【问题讨论】:

    标签: java mysql hibernate boolean biginteger


    【解决方案1】:

    这是它的工作原理。

    Boolean.valueOf((List<String>) session.createSQLQuery("SELECT IF
    (SELECT 1 FROM master.invoices WHERE currency_id = 17879)
    , 'true', 'false')").list());
    

    【讨论】:

      【解决方案2】:

      相应地试试这个,伙计

      SELECT CASE WHEN EXISTS(
      SELECT * 
      FROM 
      master.invoices
      WHERE currency_id = 17879
      )
      THEN CAST(1 AS BIT)
      ELSE CAST(0 AS BIT) END
      

      【讨论】:

      • 这段代码给了我一个错误。 .jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'BIT) ELSE CAST(0 AS BIT) END' at line 1
      猜你喜欢
      • 1970-01-01
      • 2011-09-05
      • 2011-03-27
      • 1970-01-01
      • 2010-09-25
      • 1970-01-01
      • 1970-01-01
      • 2017-12-13
      • 2011-12-23
      相关资源
      最近更新 更多