上边搭建环境的时候提到phoenix 高版本支持limit offset进行分页,确实有了这个挺方便的。可是在使用过程当中也遇到了点问题,就是带有order by时,直接在order by 以后使用limit offset 会出现问题,并且官方文档这块说实话写的不太详细。所以,本身在遇到这个问题的时候花了点时间摸索最终顺利把问题解决。所以在这里作下简单的总结:spa
1) 不带排序的状况:select * from table_name limit X offset X 这仍是能够的排序
2)带排序的状况, 而且多表关联查询,在这里举一个工做中的例子大概来讲明一下:文档
SELECT * FROM
(
SELECT it
<!--注意这里不能含有* 不然出错-->
A.TOPIC_ID TOPIC_ID, A.MEDIA_PLATFORM_ID MEDIA_PLATFORM_ID,
B.INFO_ID INFO_ID, B.INFO_HEADLING INFO_HEADLINGtable
FROM INFO_STATISTICS AS B INNER JOIN TOPIC_INFO_RELATED AS A
ON A.INFO_ID = B.INFO_ID
WHERE A.TOPIC_ID = #{topicId}
<if test="startDate != null and endDate != null">
AND A.PUBLISH_DAY BETWEEN #{startDate} AND #{endDate}
</if>
order by B.HEAT_RATE desc
offset #{start}
) limit #{rows}test
不过换成了这种以后查询效率明显要慢了,不过解决了个人问题。效率
若是你们有好的解决办法,欢迎分享。。。。。。。。。。。。select