如何从HQL中选择

Pat*_*vin 6 java select hibernate hql

我是HQL的新手并且有一个我需要转换的SQL表达式但是我无法选择SQL语句:

select SenseDate as Time,SenseValue as Value
from UserData
where NetworkID = '23'
and IODeviceID = '129'
and SenseDate >=  DateAdd("d",-1, GETDATE())
and SenseDate<=GETDATE()
Run Code Online (Sandbox Code Playgroud)

我可以在HQL中运行这部分而不会出现问题:

from UserData 
where NetworkID = '23'
and IODeviceID = '129'
and SenseDate >=  DateAdd(d,-1, GETDATE())
and SenseDate<=GETDATE()
Run Code Online (Sandbox Code Playgroud)

但是我只想要返回SenseDateSenseValue值,有人可以告诉我如何选择,当我尝试添加select SenseDate, SenseValue等.我一直在Netbeans中得到错误

whi*_*rra 5

您可以使用HQL选择字段/列.看起来如下:

select
    SenseDate,
    SenseValue
from
    UserData
where
    NetworkID = '23'
and
    IODeviceID = '129'
and
    SenseDate >= DateAdd(d, -1, GETDATE())
and
    SenseDate <= GETDATE()
Run Code Online (Sandbox Code Playgroud)

执行此操作时,您将收到一个对象数组列表:

final List<Object[]> values = query.list();
Run Code Online (Sandbox Code Playgroud)

列表中的每个元素代表一个找到的行.数组本身包含两个选定的字段,其顺序与您在语句中声明的顺序相同.


dot*_*joe 4

我认为HQL现在有“new”关键字。

从例如DomesticCat中选择新家庭(母亲,伴侣,offspr)作为母亲加入母亲。伴侣作为伴侣离开加入母亲。小猫作为offspr

类似于标准世界中的预测/结果转换器。