select location.province as provin,max(situation.reporttime) as report from situation, location, mbugzone where situation.locationid=location.locationid and situation.locationid=mbugzone.locationid 
group by location.province order by report

解决方案 »

  1.   

    如果要取所有记录的最大值:
    select max(situation.reporttime) as report from situation,location,mbugzone where situation.locationid=location.locationid and situation.locationid=mbugzone.locationid如果要取每个location.province 的最大值:
    select location.province as provin,max(situation.reporttime) as report from situation,location,mbugzone where situation.locationid=location.locationid and situation.locationid=mbugzone.locationid
    group by location.province as provin
      

  2.   

    晕,为什么都把location.province 做为group by 子项?怪我!其实这条语句我根本每写全了,因为太长了。所以可能给各位造成误会了,我把完整的贴出来
    select delivery.deliveryid as deliver,situation.currentstatus as situa,location.province as provin,mbugzone.zonename as zone,situation.reporttime as report from situation,delivery,location,mbugzone where delivery.username='anda' and delivery.tripid = situation.tripid and situation.locationid=location.locationid and situation.zoneid=mbugzone.zoneid and situation.locationid=mbugzone.locationid order by report
    现在是要附加取一个situation.reporttime 的最大值,按照上面两位说的现在是不行的。
      

  3.   

    现在我知道group by 的用法了,其实就是把非聚合元素都写上去就可以了。多谢楼上两位,最后我采用了Yang_(扬帆破浪) 的第一中方法!