mysql分页 和 mysql中利用编号id和每页条数来进行分页

版权声明: https://blog.csdn.net/W_Leodong/article/details/80032484

1.mysql分页

序】
        select 选择的列
        from

        where 查询的条件
        group by
属性 having 组过滤的条件
        order by
排序属性
        limit 起始记录位置,取记录的条数   (这里不需要加括号)
【其中】
        select 选择的列
        from

        where 查询的条件
        group by
属性 having 组过滤的条件
        这个是按照分属性行分,所有分属性上相同的记录被分,作为结果中的一条记录,后面的having组进过滤的条件,必和group by一起使用
        order by 排序属性 是对结果集合行排序,可以是升序asc,也可以是降序desc
        limit 起始记录位置,取记录的条数,对记录进取,主要用来实现功能

-- 语法:

SELECT select_listFROM table_name 

        [ WHERE search_condition ] 

        [ GROUP BY group_by_expression ] 

        [ HAVING search_condition ] 

        [ ORDER BY order_expression [ ASC DESC ] ] 

        [limit m,n]  

-- 示例:

-- limit 0,10是从第一条开始,10条数据

       select classNo  from table_name  

        group by classNo   

        having(avg(成绩)>70) 

        order by classNo  

        limit 0,10

================================================================

2.mysql中利用编号id和每页条数来进行分页(如果实时动态插入数据,应该用id来进行分页)

【根据某一个ID  和 size 来进行分页】 ===好处:动态插入数据时来进行分页(根据ID这列来进行降序排序)

SELECT * FROM 表名 WHERE  STARTID< #{started}   ORDER  BY  flow_id DESC  LIMIT  SIZE=#{size}

Demo如下:
<!-- 查询social的公告信息列表【根据id和每页显示条数来进行分页】 -->
	<select id="searchSocialCrowdNoticeInfo" resultMap="BaseResultMap">
		select  <include refid="Base_Column_List"></include>
		from FL_CROWD_NOTICE where CROWD_ID=#{flCrowdNotice.crowdId} 
		<if test="startId!=null and startId!=0">
			AND NOTICE_ID < #{startId}
		</if>
		ORDER BY NOTICE_ID DESC LIMIT 0,#{size}
	</select>
dao接口
public List<FlCrowdNotice> searchSocialCrowdNoticeInfo(@Param("flCrowdNotice")FlCrowdNotice flCrowdNotice, @Param("startId")Long startId, @Param("size")Integer size);

service层
public List<FlCrowdNotice> searchCrowdNoticeInfo(FlCrowdNotice flCrowdNotice, Long startId, Integer size) {
		List<FlCrowdNotice> flCrowdNotices = iFlCrowdNoticeDao.searchSocialCrowdNoticeInfo(flCrowdNotice,startId,size);
		return flCrowdNotices;
	}


猜你喜欢

转载自blog.csdn.net/W_Leodong/article/details/80032484