select
a.GRID_CODE as 网格区号
,a.WORKER_ID as 工作id
,b.NAME AS 姓名
,a.collection_time as 开始时间
,(select collection_time from poi_collection where a.grid_code in (3,2) and a.WORKER_ID=b.WORKER_ID group by a.grid_code,a.worker_id order by collection_time desc limit 1 ) as 结束时间
,COUNT(*) AS 采集数量
FROM poi_collection a
INNER JOIN poi_user b ON a.WORKER_ID = b.WORKER_ID
WHERE a.GRID_CODE IN (3,2)
group by
a.GRID_CODE
,a.WORKER_ID
,b.NAMEunion select
NULL AS GRID_CODE
,NULL as WORKER_ID
,'总数量' as 姓名
,null as 开始时间
,null as 结束时间
,(SELECT COUNT(*) FROM poi_collection a WHERE a.GRID_CODE IN (3,2) ) AS 采集数量
FROM poi_collection a
WHERE a.GRID_CODE = 3
AND a.COLLECTION_TIME > '2007-08-01'
group by
a. GRID_CODE
,a.WORKER_ID我想实现的是按grid_code 、worker_id 查询开始作业时间和最后作业时间,但是,我这样写查出来的结束时间是所有的符合条件的信息里面的最大作业时间。
a.GRID_CODE as 网格区号
,a.WORKER_ID as 工作id
,b.NAME AS 姓名
,a.collection_time as 开始时间
,(select collection_time from poi_collection where a.grid_code in (3,2) and a.WORKER_ID=b.WORKER_ID group by a.grid_code,a.worker_id order by collection_time desc limit 1 ) as 结束时间
,COUNT(*) AS 采集数量
FROM poi_collection a
INNER JOIN poi_user b ON a.WORKER_ID = b.WORKER_ID
WHERE a.GRID_CODE IN (3,2)
group by
a.GRID_CODE
,a.WORKER_ID
,b.NAMEunion select
NULL AS GRID_CODE
,NULL as WORKER_ID
,'总数量' as 姓名
,null as 开始时间
,null as 结束时间
,(SELECT COUNT(*) FROM poi_collection a WHERE a.GRID_CODE IN (3,2) ) AS 采集数量
FROM poi_collection a
WHERE a.GRID_CODE = 3
AND a.COLLECTION_TIME > '2007-08-01'
group by
a. GRID_CODE
,a.WORKER_ID我想实现的是按grid_code 、worker_id 查询开始作业时间和最后作业时间,但是,我这样写查出来的结束时间是所有的符合条件的信息里面的最大作业时间。
tmp_poi_id GRID_CODE WORKER_ID Xint Yint COLLECTION_TIME CHECK_TIME
001-124-10-125-40 1 4 125 40 2007-8-1 0:00
001-124-11-125-40 1 4 125 40 2007-8-1 0:00
001-124-1-125-38 1 4 125 38 2007-8-1 0:00
002-132-41-20-59 2 19 20 59 2007-9-6 0:00 2008-2-27 10:21
002-133-2-33-62 2 19 33 62 2007-9-6 0:00
002-133-3-31-62 2 19 31 62 2007-9-6 0:00
3-1180-333-148-77 3 9000 148 77 2007-2-7 0:00
3-1180-334-149-78 3 9000 149 78 2007-2-7 0:00
3-1180-335-154-78 3 9000 154 78 2007-2-7 0:00
3-1180-336-154-76 3 9000 154 76 2007-2-7 0:00
3-1180-337-150-75 3 9000 150 75 2007-2-7 0:00
3-1180-338-150-73 3 9000 150 73 2007-2-7 0:00
3-1180-339-150-72 3 9000 150 72 2007-2-7 0:00
3-1180-340-154-71 3 9000 154 71 2007-2-7 0:00
3-1180-341-154-72 3 9000 154 72 2007-2-7 0:00
3-1180-342-154-74 3 9000 154 74 2007-2-7 0:00
3-1181-386-176-68 3 9000 176 68 2007-2-7 0:00
007-205-16-81-87 7 24 81 87 2007-11-5 0:00
007-205-33-73-78 7 24 73 78 2007-11-5 0:00
007-205-21-69-80 7 24 69 80 2007-11-5 0:00
007-205-19-73-80 7 24 73 80 2007-11-5 0:00 poi_userWORKER_ID NAME OP_TYPE JOB_STATUS BEGIN_WORKING_TIME PASSWORD
4 eee 4 1 123
5 ss 3 1 123
6 aa 3 1 123
7 ee 3 1 123
13 ee 2 1 123
14 jj 2 1 123
15 kk 1 1 123
16 tt 1 3 123
17 pp 1 1 123
18 aaa 1 3 123
19 vvvv 1 1 123
20 qqqq 1 1 123
21 hhh 1 1 123
22 xxx 1 1 123
23 zzz 1 3 123
24 ggg 1 3 123
4554 1 5 1 2007-1-8 0:00 1
9000 --离岗-- 5 3 2007-1-9 0:00 123
9990 --外包-- 1 2 123
9999 --公网-- 1 2 123
我想要的结果是:
网格区号 工作id 姓名 开始时间 结束时间 采集数量
1 4 sss 2007-8-1 2007-9-1 907
1 5 dd 2007-10-15 2007-10-25 2246
1 31 fff 2007-10-30 2007-11-4 318
2 23 ggg 2007-8-8 2007-8-21 245
2 35 hhh 2007-7-8 2007-7-21 1
2 40 jjj 2008-3-3 11:53 2008-3-3 11:53 1
2 46 kkk 2008-2-25 15:30 2008-2-25 15:30 67
总数量 3785