我有2个表如下:
Time: ID, UserID, start, End
User: ID, ClientID
Run Code Online (Sandbox Code Playgroud)
我想检索与具有客户端ClientID一段时间的用户相关的所有时间.
例如
与客户端ClientID = 5和Time startdate> 15/12/12 Table Time值相关联的时间
1, 3, 17/12/12 , 18/12/12
2, 5, 16/12/12 , 18/12/12
3, 4, 19/12/12 , 20/12/12
Run Code Online (Sandbox Code Playgroud)
表用户值
1, 4
2, 3
3, 5
4, 5
Run Code Online (Sandbox Code Playgroud)
结果应该是:
1, 3 17/12/12 , 18/12/12
3, 4, 19/12/12 , 20/12/12
Run Code Online (Sandbox Code Playgroud)
我怎样才能实现上述目标?
我想你需要使用INNER JOIN:
SELECT *
FROM Time T
INNER JOIN User U ON T.UserId = U.Id
WHERE U.ClientId = @ClientId
Run Code Online (Sandbox Code Playgroud)
这里有一些小提琴:http://www.sqlfiddle.com/#!3/edc4b/3
祝好运.