> 데이터 베이스 > MySQL 튜토리얼 > 数据库分批查询数据

数据库分批查询数据

WBOY
풀어 주다: 2016-06-07 15:57:42
원래의
2462명이 탐색했습니다.

数据分批查询数据 前段时间由于线上项目的活动问题,发现向第三方系统请求数据的时候,请求的数据量竟然达到了3w多,请求的数据的方式采用Http请求的形式,事先没有想到会有这么多的数据量,所以只能分批去其他系统请求数据,每次请求200条,具体情况为:在

数据分批查询数据

前段时间由于线上项目的活动问题,发现向第三方系统请求数据的时候,请求的数据量竟然达到了3w多,请求的数据的方式采用Http请求的形式,事先没有想到会有这么多的数据量,所以只能分批去其他系统请求数据,每次请求200条,具体情况为: 在数据库中存在一张表,主要字段有user_id(用户名),count(物品数量),系统要求能够实时更行用户的物品数量,但是保存物品数量的接口不在自己的系统中,所以需要想起他的系统请求数据,主要是每次如何获得用户user_id,又不重复。主要学习的是用数据库Sql 语句的学习:
select top 200 user_id from(
		    SELECT  
		  (Row_number()
		         OVER(
		           ORDER BY user_id)) as ix,
		       user_id
			FROM   [xxx].[dbo].t_world_cup_exchange_user_flag_list
		  GROUP  BY user_id 
		  ) tt
where tt.ix > #{index,jdbcType=VARCHAR}
로그인 후 복사
主要使用数据库函数,Row_number为返回的结果集生成特定的序列号,利用这个函数就能实现每次用200个不同的用户去请求数据,如从0~200,201~401,401~601... ...这样的序列开始选择自己需要的用户Id,当然在自己的程序需要保存这个index游标的值,并且保持能够循环。 --- --- 路漫漫其修远兮,吾将上下而求索
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿