sql语句,请大家帮助!!!(200分)

  • 主题发起人 主题发起人 张剑波
  • 开始时间 开始时间

张剑波

Unregistered / Unconfirmed
GUEST, unregistred user!
环境: delphi7 + ADO+ access2000 adodataset执行sql语句
问题简化如下:
——————————————————
只有一个表,表名:xyz
表的结构:
ftime 时间型的日期字段, 记录用户来访时间
fusername varchar字段, 来访的用户名称
fip varchar字段, 来访用户的IP地址
特别说明:一天中一个用户可能在不同时间多次来访问,都记录在表xyz中。
select count(*),fusername,fip from xyz 能统计用户的访问次数
问题:
A、如何用SQL表达:一个用户一天中的访问次数和第一次访问时间。
select count(*),fusername,fip ,ftime from xyz group by fusername,fip ,ftime
这句无效
B、字段是时间形的,以"hh:mm:ss"的形式显示,
如何在原有时间上显示加8小时,如早上08:00:00来访问,显示成"16:00:00"
请HELP,THANKS


 
临时表吧,先将一天第一次访问时间先存入一个表, 然后将访问次数存入一个表,再
将二个表联起来,B就在临时表里 + 8不就得了
 
1、
Select fusername,
tmp as ftime,
(Select count(fusername)
From table1 where fusername=BBB.fusername) as 次数,
(Select Fip
From table1 where fusername=BBB.fusername and ftime=BBB.tmp) as Fip
From (select fusername,min(ftime) as tmp from table1 group by fusername) BBB

2、
Select Ftime+#08:00:00# as tmp from table1
 
同意楼上

语法没有问题。

只是不知 , ACCESS 或 ADO 可不可以支持。

要是 SQL SERVER 应没有问题 , 在 ACCESS 下没有试过。
 
我昏了头,问题1非常简单,已经解决:
select count(*),fusername,fip ,min(ftime) from xyz group by fusername,fip
 
第二个问题,在数据库里加上8小时也行
help me !!!
 
thanks for QuickSilver的热心。
我的问题自己已经解决。
 
多人接受答案了。
 
后退
顶部