谢谢你的回复,我是问题没有说清楚吗?还是怎么样?List list = session.find( "select count(*) from Person" ); List list = session.find( "select count(id) from Person" );我可以把两个list中object都取出来,且也知道里面放的是什么objcet这个不是重点,重点是我想知道为什么 select count(*) from Person select count(id) from Person会有什么不同还有就是怎么样能取到最大值 select max(id) from Person
不清楚你的find方法的写法我直接使用 List l = sessionHB.createQuery( "select count(id) from User" ).list(); out.println(l.size());是返回size() == 1的
select count(*) from Person和select count(id) from Person當然不一定會出現一樣的值拉﹐這是SQL的東西了。select max(id) from Person要取最大值只有用list.iterator().next()才能取到。 還有﹐在hibernate裡面用的是HQL﹐與SQL存在不同的.
select count(Person.id) from Person
这样还试不行,请问你试过吗?
所以只有list.iterator().next()才是结果
List list = session.find( "select count(id) from Person" );我可以把两个list中object都取出来,且也知道里面放的是什么objcet这个不是重点,重点是我想知道为什么
select count(*) from Person
select count(id) from Person会有什么不同还有就是怎么样能取到最大值
select max(id) from Person
List l = sessionHB.createQuery( "select count(id) from User" ).list();
out.println(l.size());是返回size() == 1的
還有﹐在hibernate裡面用的是HQL﹐與SQL存在不同的.