最近在维护公司旧系统,在一段Java代码中发现了以下的SQL语句:String SQLStatement = " select * from (" + getSql(bean)+ ")tk where tk.rownum >= "+ (startIndex+1) + " and tk.rownum <= " + (startIndex + Constants.PAGE_SIZE);其中getSql(bean)是方法调用,startIndex是变量,Constants.PAGE_SIZE是常量,那么上面的tk大家说说是什么意思啊?
tk.rownum又是什么意思呢?

解决方案 »

  1.   

    (" + getSql(bean)+ ")  这可以一个子查询或视图  tk为其别名
      

  2.   

    看起来像分页程序,但这个语句好像有问题的表名.rownum这样可以用吗?还有分页在小弟看来,应该给rownum取个别名
      

  3.   

    谢谢楼上的各位,高人挺多的啊,tk是一个子查询的结果,还有rownum在子查询中有一个别名:rwno