KeyWords 表 -存放的是关键词数据; Clickinfo 表 -存放的是点击的数据。(根据KeyWords表的信息点击后,保存的点击记录信息)KeyWords 内容大概是:关键词名称 关键词网址
aaa www.1212.com
bbb www.1223.com
ccc www.64664.com
aaa www.545654.com
ccc www.1212d.com
bbb www.6786.com等等
Clickinfo 表内容大概是:
关键词名称 关键词网址 点击时间(日期型格式) 点击IP
bbb www.1223.com 2010-3-3 17:22:22 121.151.11.111
ccc www.1212d.com 2010-3-3 17:26:22 121.151.2.22
aaa www.545654.com 2010-3-3 17:46:22 121.141.32.3
aaa www.545654.com 2010-3-3 17:56:22 121.150.22.24
等等
现在,要做的是:从KeyWords表取出所有的记录,但是要满足这个条件。取出的记录,在Clickinfo表中,同关键词名称、同关键词网址、同IP的前三段(比如aaa.bbb.ccc.??? aaa.bbb.ccc.相同就视为是同IP,本地IP已经获得,变量是IP,这个IP和Clickinfo表中的点击IP比较)、点击时间和当前的时间间隔大于60分钟(当前时间用Getdate取得)。
不知这个SQL如何写?
aaa www.1212.com
bbb www.1223.com
ccc www.64664.com
aaa www.545654.com
ccc www.1212d.com
bbb www.6786.com等等
Clickinfo 表内容大概是:
关键词名称 关键词网址 点击时间(日期型格式) 点击IP
bbb www.1223.com 2010-3-3 17:22:22 121.151.11.111
ccc www.1212d.com 2010-3-3 17:26:22 121.151.2.22
aaa www.545654.com 2010-3-3 17:46:22 121.141.32.3
aaa www.545654.com 2010-3-3 17:56:22 121.150.22.24
等等
现在,要做的是:从KeyWords表取出所有的记录,但是要满足这个条件。取出的记录,在Clickinfo表中,同关键词名称、同关键词网址、同IP的前三段(比如aaa.bbb.ccc.??? aaa.bbb.ccc.相同就视为是同IP,本地IP已经获得,变量是IP,这个IP和Clickinfo表中的点击IP比较)、点击时间和当前的时间间隔大于60分钟(当前时间用Getdate取得)。
不知这个SQL如何写?
解决方案 »
- Delphi Adoquery 查询语句中有 select Count(字段) 查询速度很慢
- mysql+DELPHI执行SQL脚本
- 怎样添加逻辑计算功能,如:if(a>b,x,y) 或if(a=b,x,y)
- imgedit怎么不能从文件加载图象?
- 图形问题。请帮帮。15分 ,知道的人很简单解决。
- 一个小问题,请各位大虾帮小弟一个忙
- 库存盘点的意义??理论知识??
- 关于speedbutton显示图标的问题
- ++++++多层系统中,应用服务器的主窗体如何访问远程数据模块上的ADO控件+++++
- 一个困扰我很久的问题:怎样才能使绘制的图形(表面)更平滑?请高手献招。谢谢!
- 请教一个简单的思路问题
- 学习win32 api请加QQ群:30873214
Str2 := ' Select ' +
' a.关键词名称 as 关键词名称 , '+
' a.关键词网址 as 关键词网址 , '+
' From KeyWords a '+
' Left Join '+
' (Select 关键词名称 , 关键词网址 , Max(点击时间) as 点击时间 , 点击IP From ClickInfo where 点击IP like ''' + IP + '%'' Group By 关键词名称 , 关键词网址 , 点击IP ) b '+
' on a.关键词名称 = b.关键词名称 And a.关键词网址 = b.关键词网址 '+
' Where 1=1 '+
' And (DateDiff("n", b.点击时间 , GetDate()) > 60) Order By a.关键词名称 Desc';
Str2 := ' Select ' +
' a.关键词名称 as 关键词名称 , '+
' a.关键词网址 as 关键词网址 , '+
' From KeyWords a '+
' Left Join '+
' (Select 关键词名称 , 关键词网址 , Max(点击时间) as 点击时间 , 点击IP From ClickInfo where 点击IP like ''' + IP + '%'' Group By 关键词名称 , 关键词网址 , 点击IP ) b '+
' on a.关键词名称 = b.关键词名称 And a.关键词网址 = b.关键词网址 '+
' Where 1=1 '+
' And (DateDiff("n", b.点击时间 , GetDate()) > 60) Order By a.关键词名称 Desc';
一、KeyWords表中既然存储的是关键字,那为什么第一列还有重复值呢?
既然允许第一列有重复值,这个表纯粹就是多余的,没有任何意义!二、Clickinfo表中的字段“关键词网址”,就是一个多余的字段三、同IP的算法很麻烦,建议增加一个字段IPValue,在点击的时候写出IPValue。
IPValue=256*256*IP1+256*IP2+IP3。IP1、IP2、IP3就是IP的前三段值。
经过这样的处理后,再写出sql就容易了