dihao26018
2009-08-04 11:43
浏览 1.3k
已采纳

关于Hibernate hql中IS NULL和IS NOT NULL语句的替代问题

今天看到应该尽量避免使用IS NULL和IS NOT NULL,理由如下:

Where字句中的IS NULL和IS NOT NULL将不会使用索引而是进行全表搜索,因此需要通过改变查询方式,分情况讨论等方法,去掉Where子句中的IS NULL和IS NOT NULL。

请问这两个语句有什么不影响效率的语句或方法来进行替代吗?
[b]问题补充:[/b]
有时候,IS NULL语句是不可避免的,handonghandong所提的是不是通过Hibernate分批次取出数据,比如每次取100条,避免全表搜索的出现?

但我想问的是在全表进行搜索,取出所有name为空的记录,如果使用IS NULL的话,对这个表所建的索引就会失效,请问有没有什么语句可以替代呢?

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

2条回答 默认 最新

相关推荐 更多相似问题