请教一个GROUP BY 的用法!
rs1.open "select id,myip,r1,r2,time1,times,keyfrom,keyword from keylist
group by keyfrom
order by times desc,time1 desc",conn,1,3
KEYFROM这个字段有很多相同的,我想按这个分组应该怎么弄?
现在的错误:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access Driver] 试图执行的查询中不包含作为合计函数一部分的特定表达式 'id'
[315 byte] By [
msdn] at [2007-8-15 10:04:56]

# 1 Re: 请教一个GROUP BY 的用法!
rs1.open "select keyfrom from keylist group by keyfrom order by times desc,time1 desc",conn,1,3
# 2 Re: 请教一个GROUP BY 的用法!
"试图执行的查询中不包含作为合计函数一部分的特定表达式 'id'"
不被Group by的字段需要作为合计函数的一部分,比如Max(id) as id
# 4 Re: 请教一个GROUP BY 的用法!
rs1.open "select * from keylist group by keyfrom order by times ,time1 desc",conn,1,3
# 6 Re: 请教一个GROUP BY 的用法!
victorhero(游神)
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access Driver] 不能将已选定 '*' 的字段中组合。
# 9 Re: 请教一个GROUP BY 的用法!
楼主难道只会看现成的代码么?
因为你没讲清楚查询规则,只说按哪个字段分组,参考:
select MAX(id) AS id,MAX(myip) AS myip,MAX(r1) AS r1,MAX(r2) AS r2,MAX(time1) AS time1,MAX(times) AS times,keyfrom,MAX(keyword) AS keyword from keylist
group by keyfrom
order by times desc
# 10 Re: 请教一个GROUP BY 的用法!
"试图执行的查询中不包含作为合计函数一部分的特定表达式 'id'"
不被Group by的字段需要作为合计函数的一部分,比如Max(id) as id
---就是这样的!
# 11 Re: 请教一个GROUP BY 的用法!
select MAX(id) AS id,MAX(myip) AS myip,MAX(r1) AS r1,MAX(r2) AS r2,MAX(time1) AS time1,MAX(times) AS times,keyfrom,MAX(keyword) AS keyword from keylist
group by keyfrom
这么说来,就没办法取多条记录了吗?MAX什么的,那只有一条记录啊。
我是想把所有记录都取出来,但只不过想把keyfrom这个字段内容相同的放在一起。
# 13 Re: 请教一个GROUP BY 的用法!
好像是我搞错了。我的想法用ORDER BY KEYFROM就可以了。
谢谢大家了。是我的想法错误了。
但是如果我想把KEYFROM这个字段内容相同的记录的TIMES(数字)求一下和,应该怎么做?