精通SQL的来帮个忙吧

来源:百度知道 编辑:UC知道 时间:2024/05/24 18:29:36
userinfo 表(userinfo_id ,userinfo_name) userinfo_id:用户id userinfo_name:用户名

dlcsb 表 (dlcsb_id,userinfo_id,dlcsb_date) dlcsb_id:id userinfo_id:用户id dlcsb_date:登录时间(字段存放数据类型“2007-03-06 09:21:21”)

怎么通过sql语句等待登录次数和登录天数。(注意,一天不管登录多少次,均只算登录一天)

不明白你这句话:怎么通过sql语句等待登录次数和登录天数。(注意,一天不管登录多少次,均只算登录一天)
你是登记登陆次数和登录天数呢?还是计算登陆和登录天数?还有你的注意:不管登陆多少次,均只算登录一天。是不分登陆者吗?

select U.userinfo_name,B.Logins,Convert(datetime,B.d_date) from userinfo As U,(select userinfo_ID,d_date=CONVERT(varchar(10),dlcsb_date),Logins=Count(*) from dlcsb group by ss,CONVERT(varchar(10),dlcsb_date)) As B
where U.userinfo_ID=B.userinfo_ID

如果用php我到可以回答你一下,^_^!

首先,建议你这样设计登陆字段:
dlcsb_date int(10) unsigned NOT NULL default '0',

其次,在php中用date函数来转换为你需要那种时间表示格式
date ("Y/n/d H:i:s", $pro[dlcsb_date])

其实,逻辑部分都是用编程语言来实现的,数据库只是存储而已!做到并发控制而已!