select e.id,e.buildDate,e.machinetype,e.code,e.gps,sum(e.syArea),count(a.name),from table a, table e
where a.id = b.id
group by e.id,e.buildDate,e.machinetype,e.code,e.gpsa.id 是table a 的主键
如果我group by 加了e.id的话 就不是我要的结果
去掉e.id就是我要的结果 因为id总是不一样的啊 sql 语句不写e.id的话
我修改 删除还是根据id 来的啊 怎么办???
where a.id = b.id
group by e.id,e.buildDate,e.machinetype,e.code,e.gpsa.id 是table a 的主键
如果我group by 加了e.id的话 就不是我要的结果
去掉e.id就是我要的结果 因为id总是不一样的啊 sql 语句不写e.id的话
我修改 删除还是根据id 来的啊 怎么办???
where a.id = b.id
group by e.buildDate,e.machinetype,e.code,e.gps ???
2009 北京 小小 大机电 11111 2222 200
2009 上海 大大 小机电 11111 2222 300
2009 北京 阿猫 大机电 54545 5446 220
这是我数据库存的数据然后要的结果是这样:
建设时间 城市 机电井类型 项目编码 GPS信息 受益面积(亩) 受益户数
2009 北京 大机电 11111 2222 420 2
2009 上海 小机电 54545 5446 300 1-----------------------------
这样大家能明白吗??我现在头都大了 表达欠佳啊 抱歉大家
from 表
group by 建设时间,城市,机电井类型,项目编码,GPS信息
如果是下面的数据就是你想要的结果create table A(建设时间 varchar(20),城市 varchar(10),姓名 varchar(10),机电井类型 varchar(10),项目编码 varchar(10),GPS信息 varchar(10),受益面积 numeric(10,3))
go
insert into A
select '2009','北京','小小','大机电','11111','2222',200
union
select '2009','上海','大大','小机电','54545','5446',300
union
select '2009','北京','阿猫','大机电','11111','2222',220
go
select 建设时间,城市,机电井类型,项目编码,GPS信息,受益面积 = sum(受益面积),受益户数 = count(1)
from A
group by 建设时间,城市,机电井类型,项目编码,GPS信息
go
drop table A---结果
2009 北京 大机电 11111 2222 420.000 2
2009 上海 小机电 54545 5446 300.000 1
不会吧受益户数 是根据 机电来判断的 比如小小 和阿猫都对应着大机电 所以受益户数为2对于gps这些 不用管其实winstonbonaparte 他写的是我要的
但是还有个主键id 忘记加在里面了
你尝试着group by id .....就不一样了
(因为id我要做后面的修改 删除需要 )