回 帖 发 新 帖 刷新版面

主题:新手请教一个查询问题

<!-- #INCLUDE file = "comm/COMM_Connect.asp" -->
<% dim man_age_num,manage,i
set O_Con=Open_NewConnection    
set rs=server.createobject("adodb.recordset")
'注册男性会员分年龄段统计

sql="select A.birth_year,count(B.member_no) as number from tmp_default A,tm_club_marry B where A.member_no=B.member_no and A.sex='1' and datediff(day,B.register_date,getdate())=1 order by A.birth_year asc"

rs.Open sql,O_Con ,0,1
if not rs.eof then
  man_age_num=rs("number")

  manage=year(now())-rs("birth_year")
 
  if not(manage="" or isnull(manage)) then
  i=manage/10
   select case session(i)
     case "1":
     response write("man_age_num")
     
     case "2":
     response write("man_age_num")
     
     case "3":
     response write("man_age_num")
     
     case else
     response write("man_age_num")
     
    end select 
    end if
else
 man_age_num=0
 end if
rs.close
O_Con.close
set O_Con=nothing
 %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>注册男生会员分年龄段统计</title>
</head>

<body>
注册男性会员数量:<%=man_age_num%>
</body>
</html>

出错问题:
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e14' 

[Microsoft][ODBC SQL Server Driver][SQL Server]列 'A.birth_year' 在选择列表中无效,因为该列未包含在聚合函数中,并且没有 GROUP BY 子句。 

/marry_age_count.asp,行10 

回复列表 (共3个回复)

沙发


sql="select A.birth_year,count(B.member_no) as number from tmp_default A,tm_club_marry B where A.member_no=B.member_no and A.sex='1' and datediff(day,B.register_date,getdate())=1 [color=800000]order by A.birth_year asc[/color]
是不是写错了?
ORDER BY A.birth_year desc

板凳

是这样的,当时已经做出来了,不过还是谢谢你!

3 楼

如果我要统计每周的注册会员总量,这个每周的时间怎么算呢?

我来回复

您尚未登录,请登录后再回复。点此登录或注册