码迷,mamicode.com
首页 > 数据库 > 详细

sql server 一对多查询

时间:2017-03-01 12:35:40      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:sign   arch   ima   where   rac   weight   var   user   arc   

看看这个需求:一个网站运行一段时间后,想要查看用户最后登录的时间.

这是表结构:

--用户表
CREATE TABLE [dbo].[T_Userinfo](
[id] [int] IDENTITY(1,1) NOT NULL, --用户ID
[name] [nvarchar](50) NULL --用户名字
) ON [PRIMARY]

 

--给用户表插入测试数据

INSERT INTO [dbo].[T_Userinfo] ([name]) VALUES (张三),(李四),(王五)

 

--登录时间表

CREATE TABLE [dbo].[T_Sign](
[id] [int] IDENTITY(1,1) NOT NULL,
[UserId] [int] NULL,
[SignTime] [datetime] NULL --登录时间
) ON [PRIMARY]

--给登录时间表插入测试数据

INSERT INTO [dbo].[T_Sign]([UserId],[SignTime]) VALUES

(1,2017-03-01 10:55:32),(1,2017-02-01 10:55:32),(1,2017-01-01 10:55:32),
(2,2016-03-02 10:55:32),(2,2017-02-01 10:55:32),(2,2015-01-01 10:55:32),
(3,2017-03-11 10:55:32),(3,2017-02-21 10:55:32),(3,2015-01-01 10:55:32)

 

---查看用户最后登录的时间
select u.id,u.name,s.signtime LastSignTime from T_Userinfo u left join [T_Sign] s on u.id=s.userid
where s.signtime =(select max(signtime) from T_sign where userid=u.id);

select * from t_sign --这句做参考

 

------------------------------------我是分割线-----------------------------------------------------

oracle 中也是这样写.参考这里 https://zhidao.baidu.com/question/513758407.html

 

sql server 一对多查询

标签:sign   arch   ima   where   rac   weight   var   user   arc   

原文地址:http://www.cnblogs.com/boboyouli/p/6483265.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!