我是HQL的新手并且有一个我需要转换的sql表达式但是我无法选择sql语句:
@H_301_2@select SenseDate as Time,SenseValue as Value
from UserData
where NetworkID = '23'
and IODeviceID = '129'
and SenseDate >= DateAdd("d",-1,GETDATE())
and SenseDate<=GETDATE()
我可以在HQL中运行这部分而不会出现问题:
@H_301_2@from UserData where NetworkID = '23' and IODeviceID = '129' and SenseDate >= DateAdd(d,GETDATE()) and SenseDate<=GETDATE()但是我只想要返回SenseDate和SenseValue值,有人可以告诉我如何选择当我尝试添加select SenseDate,SenseValue等时我会在Netbeans中遇到错误
解决方法
您可以使用HQL选择字段/列.看起来如下:
@H_301_2@select
SenseDate,SenseValue
from
UserData
where
NetworkID = '23'
and
IODeviceID = '129'
and
SenseDate >= DateAdd(d,GETDATE())
and
SenseDate <= GETDATE()
执行此操作时,您将收到一个对象数组列表:
@H_301_2@final List<Object[]> values = query.list();列表中的每个元素代表一个找到的行.数组本身包含两个选定的字段,其顺序与您在语句中声明的顺序相同.