我有一个巨大的桌子来配合.我想检查是否有一些记录的parent_id等于我的传递值.
目前我实现的是使用“select count(*)from mytable where parent_id =:id”;如果结果> 0,表示它们确实存在.
目前我实现的是使用“select count(*)from mytable where parent_id =:id”;如果结果> 0,表示它们确实存在.
因为这是一个非常大的表,我不在乎存在的记录的数量是多少,我只想知道它是否存在,所以我认为count(*)有点低效.
如何以最快的方式实现这一要求?我正在使用Oracle 10.
#
根据hibernate提示和技巧https://www.hibernate.org/118.html#A2
它建议写这样:
整数count =(整数)session.createQuery(“从….选择count(*)”).uniqueResult();
我不知道uniqueResult()在这里的魔法是什么?为什么会这样快?
比较“select 1 from mytable where parent_id = passingId and rowrum< 2”,哪个更有效?