问题描述
表中有字段idcompanyidadminidlogintime是这个计算企业登陆记录现在想查询很个adminid管理员下的登陆超过三次(每次登陆都有添加一条数据,数据超过三条的)的企业客户这里面会有两次统计,一次是SELECTcount(company_id)asc_login,company_id,admin_idFROMcompany_loginGROUPBYcompany_id,admin_id这已经生成一个表,然后在这个表中再次统计,记录过三条的记录请高手帮忙,最好能写出个存储过程,也可加QQ40321289
解决方案
解决方案二:
SELECTcount(company_id)asc_login,company_id,admin_idFROMcompany_loginGROUPBYcompany_id,admin_idhavingcount(*)>=3
解决方案三:
up
解决方案四:
是不是这样?selectcompany_idfrom(SELECTcount(company_id)asc_login,company_id,admin_idFROMcompany_loginGROUPBYcompany_id,admin_id)awherec_login>3
解决方案五:
先创建一个试图view_1SELECTcount(*),admin_idFROMcompany_loginGROUPBYadmin_idhavingcount>=3然后从试图里做selectSELECTcount(company_id)asc_login,company_id,admin_idFROMcompany_loginwhere(admin_idin(selectadmin_idfromview_1))如果用存储过程实现可以把建立视图的过程写到临时表里。后面的就一样了。
解决方案六:
方法是在分组里价格条件,1楼的方法conunt(*)我感觉不大对个人认为应该是对查询结果的company_id进行判断SELECTcount(company_id)asc_login,company_id,admin_idFROMcompany_loginGROUPBYcompany_id,admin_idhavingcount(company_id)>2
解决方案七:
3楼kjq_vb(跟着MS走)的方法应该可行。
解决方案八:
juedaihuaihuai(绝代坏坏(beyondmyself))谢谢你的提议,但我建立存储过程后又碰到新的问题,麻烦你了,解决完马上给分CREATEprocp_tongji@cishuint,--登陆次数@tiaojianvarchar(4000)=''--查询条件(注意:不要加where)asdeclare@strsqlvarchar(5000)--主语句declare@sqlvarchar(5000)begincreatetable#table1(c_loginint,companyidint,adminidint)if@tiaojian=''set@tiaojian='1=1'set@sql='insertinto#table1SELECTcount(company_id)asc_login,company_id,admin_idFROMcompany_loginwhere'+@tiaojian+'GROUPBYcompany_id,admin_id'exec(@sql)set@sql='selectcount(*)asnum,adminidfrom#table1groupbyadminid'exec(@sql)endGO以上是存储过程代码:Setrs=conn.execute("executep_tongji1,'"&tiaojian&"'")'executep_tongji登陆次数,条件'setrs=conn.execute("select*fromcompany_login")dountilrs.eofIfrs("adminid")=0Thenadmin_xingming="系统管理员"elsem_SQL="SELECTadmin_xingmingFROMadminwhereadmin_id="&rs("adminid")response.writem_sqlSetrst=conn.Execute(m_SQL)admin_xingming=rst1(0)rst.CloseEndif%><tr><td><%=rs("num")%></td><td><%=admin_xingming%></td></tr><%rs.movenextLooprs.closesetrs=nothing%>现在这样出现在另一种错误提示:[Microsoft][ODBCSQLServerDriver]连接占线导致另一个hstmt