我只是在构建SQL查询时感到困惑。我试图成功地运行它,但是我无法将它作为一个整体来构建。Sql query building
这种情况:在'userseaches'表中,用户Rushi已经用不同的searchID(在'searchtable'中的主键)10,11,12搜索了三次。当我用searchID搜索时,我得到了110个结果,其中11个获得了112个结果,12个获得了115个结果。
现在我要做的是获取ID 11和12(最近两次搜索),即112和115的搜索,并获取上次搜索(112)中新添加的用户的用户名,即三个用户。
我试过这个小件,但它很难做到整体。请随时询问详情。
预先感谢您。
下面确定是3个表:具有字段 表mastersearches:具有字段
ID Name srchtime
1 aron 22:10:10
2 rushi 12:12:14
表usersearches:
ID masterID Name nooffriends
1 2 rushi 110
2 2 rushi 112
3 2 rushi 115
表searchtable具有字段:
ID searchID Name friends
1 2 mike 25
2 2 paine 51
.
112 2 kumar 87
113 3 bandy 23
.
227 3 ganua 15
确定。
现在我只想卖三个新添加的用户对于searchID 3
现在我用这个尝试(我有两个ID与搜索与此查询):
select
Name
from
usersearches
where
searchID in (11, 12)
给所有追随者:
但它无法获取新添加的朋友。
感谢增加更多的信息,但实际的SQL构造表和一些示例数据会更加有用。 – Tony 2010-10-15 07:37:24
这一节将大家抛出“现在我要做的是,获取ID 11和12(最近两次搜索),即112和115的搜索,并获取最后搜索(112)中新添加的用户的用户名三个用户。“...你想要一个结果还是2个结果? – 2010-10-15 07:42:05
我并没有真正明白你要达到的目标 - 我的印象是你的描述与你的示例数据不符,这使得难以遵循。无论如何,在你的例子中至少有一个错字:你的SELECT在表usersearches中提到了一个列searchID,而你的表描述没有提到这样的列。也许它是'WHERE masterID in'而不是'where'searchID in'? – titanoboa 2010-10-15 08:42:29