SQL 语句如何在两张表中分组查询只取一条记录?

表A:姓名字段(name),内容:张三,李四,王二麻子表B:签到时间字段(Name,LogTime)张三,7:59张三,8:01张三,6:30李四,6:01李四,7:20... 表A:姓名
字段(name),内容:张三,李四,王二麻子

表B:签到时间
字段(Name,LogTime)
   张三,7:59
   张三,8:01
   张三,6:30
   李四,6:01
   李四,7:20

我想根据表1的Name字段,分组查询表2的记录,每个人只取最早一次签到时间,该怎么写SQL语句呢?
   
展开
 我来答
千锋教育
2015-12-27 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
sql语句中,关联查询只取分组的一条记录的方法如下:
select userid,ranking,username from table //查询字段有userid username
where userid+ranking in //where 条件包括userid+ranking in是集合选择关键字
(
select userid+max(ranking) from table // max(ranking)选择ranking列的最大值
group by userid //根据userid分组
)
以上sql中,内层select查出了最大的ranking,根据userid分组,外层查询中选择userid+ranking。
chenfenggang99
2014-06-07 · TA获得超过1850个赞
知道大有可为答主
回答量:1746
采纳率:75%
帮助的人:1722万
展开全部
select name,min(logtime) from 表B

where name in(select * from 表A)
group by 表B.name

测试一下行不行
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
badkano
2014-06-07 · 知道合伙人体育行家
badkano
知道合伙人体育行家
采纳数:144777 获赞数:885359
团长

向TA提问 私信TA
展开全部
select name,min(log_time) as logtime from 表B where name in (select name from 表A) group by name

这个样子?

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式