主题:  关于SQL的两个问题,麻烦高手花点儿时间回下贴,谢谢

谁染枫林醉

职务:普通成员
等级:1
金币:1.0
发贴:148
#12004/1/12 17:43:48
1.我想选择出利润在前10名的字段并按照最后添加利润的时间降序排列,利润字段为lirun,时间字段为time
"select * from table lirun in (select top 10 lirun from table order by lirun desc ) order by time desc"
这样写可以吗?加括号的语句不加括号行吗?如果括号里的语句修改为"select top 10 * from table order by lirun"可以吗?

2.我想列出连续6个月内lirun大于70000的下级代理在7个以上的记录,时间字段为time,隶属于字段为lishu,利润字段为lirun
"select count * from table where max(time)-min(time)>=6 and lishu = rs("id") and lirun >= 70000"
这是我随便写的语句,不符合规则,我想问一下最早的利润增加时间和最晚的利润时间如何表示呀用max(time),min(time)可以表示吗?连续6个月如何表示呀,用max(time)-min(time)>=6可以表示吗?往数据库里添加time字段的话用date()还是用time()函数呀。
我想输出符合条件的记录的条数,怎么做呀,除了建立记录集体,然后"response.write rs.count"外还有什么办法呀,"select count * from table"这句返回的是记录集,还是记录集的条数呀,如何知道是多少条记录呀。
"lishu=rs("id")"这句表示是它的下级代理,在rs("id")的两边需要用单引号括住吗?
还有就是这怎样综合的写出这条语句呀?
3.怎样计算出下级代理商的所有销售额总和和平均销售额呀
"select sum lirun from table where lishu=rs("id")"这样写对吗,怎样调用这个数值呀,比如我想判断它时候大于20万,如何来用if语句写呀。
4.我想把平局利润在10万以上的小组按小组分组排列并按时间降序排列,如何写SQL语句呀?
利润字段lirun,小组字段xiaozu时间字段time
"select * from table where avg(lirun) >= 100000 group by xiaozu order by time"这样写可以吗?我想输出经理小组的平局利润如何写呀。"select avg lirun from table where xiaozu='"&经理&"'"这样写可以吗?'"&经理&"'两边需要用单引号和双引号括住吗?如果选择xiaozu字段里包含"经理"的记录是写成xiaozu like '"%&经理&%"'还是xiaozu like %'"&经理&"'%还是xiaozu like '%"&经理&"%'呀

这两天学sql快头大了,好多要求的执行语句都不是很明白,想通过问这几个问题来学习一下,请各位高手帮帮忙,先谢谢了