锁定老帖子 主题:springside学习中遇到的问题
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-01-22
这种count(*)有问题,就是distinct不能使用。一旦碰到需要distinct的地方就会出错,例如页面上是2条但总记录数却显示成4条。
各位兄弟有没解决问题的办法啊? |
|
返回顶楼 | |
发表时间:2007-02-02
我也遇到了了这个问题,有没有谁有解决的办法呀?
|
|
返回顶楼 | |
发表时间:2007-02-02
native sql里边都不能执行count(*)的。
|
|
返回顶楼 | |
发表时间:2007-02-09
Godlikeme 写道 嗯,这个比较明白,那就是返回记录数的sql写法问题。
没有看过源代码,但是猜测,removeOrders()应该把 order by ,group by 这些零碎都干掉了。 为什么前面不要写select count(*) from (select ...) 是因为没必要嵌套一个返回大量查询数据的子查询,效率比较低。 赞成Godlikeme的看法,要实现count,如果写成select count(*) from (select ...)效率是比较低的,因为数据库将先完成select ...以后才会执行select count(*),如果数据量大将会占用大量的时间和数据库资源。正确的写法是去掉select部分,加上select count(*),部分 |
|
返回顶楼 | |