求一access查询(sql)语句

来源:百度知道 编辑:UC知道 时间:2024/05/21 19:59:55
vb6.0+access2003
access里有一个表1,
单位编号 单位名称 时间 单位类别 办公经费
1 a 2005 W 400
1 a 2006 W 500
1 a 2007 W 800
2 b 2005 F 1000
2 b 2006 F 100
2 b 2007 F 90
3 c 2005 W 300
3 c 2006 W 400
3 c 2007 W 100...
...

想做个查询(tableview),取得 按单位类别和时间 分类的 最小办公经费值 和 单位名称、时间、单位类别...sql语句该怎样写呢?

我写的:

单位类别, 时间, Min(办公经费) AS 最小办公经费,
FROM 表1
GROUP BY 单位类别, 时间;

这样可得到按单位类别和时间分类的最小办公经费值,但无法得到取得最小值的单位名称,请教!
我想得到的结果大致是这样的:
类别 时间 单位名称 最小办公经费值
M 2005 a 100
M 2006 d 300
M 2007 c 200
F 2005 d 900
F 2006 d 100
F 2007 a 300

我写的语句可以查到这样的结果:
M 2005 100
M 2006 300
M 2007 200
F 200

select 单位类别, 时间,单位名称, min(最小办公经费)
FROM 表1
GROUP BY 单位类别, 时间,单位名称;
结果如下:
类别 时间 单位名称 最小办公经费
w 2005 a 400
w 2005 c 300
w 2006 a 500
w 2006 c 400
w 2007 a 800
w 2007 c 100
f 2005 b 1000
f 2006 b 100
f 2007 b 90
如果GROUP BY语句没有单位名称就会得到正确的结果
即不按单位名称分类又显示单位名称字段
结果如下:
类别 时间 单位名称 最小办公经费
w 2005 c 300
w 2006 c 400
w 2007 c 100
f 2005 b 1000
f 2006 b 100
f 2007 b 90

select distinct 单位类别, 时间,单位名称, Min(办公经费) AS 最小办公经费,
FROM 表1
GROUP BY 单位类别, 时间,单位名称;