VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 640|回复: 4

求一条SQL语句关于 INNER JOIN

[复制链接]

1

主题

3

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-1-27 07:20:01 | 显示全部楼层 |阅读模式
有连个表关联别结构如下

a表

    id  fid  name     time
    01   43   ee  2016-12-22
    02   41   qq  2016-12-22
    03   42   88  2016-12-21
b表
    id    aid    sj    time
   guid   01   1111  2016-12-22
   guid   02   1111  2016-12-24
   guid   03   1111  2016-12-22
   guid   03   1111  2016-12-24
------------------------------------------------------------------
a表中用于存放用户信息,b表是对用户信息的审核 a.id=b.aid
当只审批一次的时候 用INNER JOIN查询一切正常会得到我想要的结果!
可是当审核两次后就回查询出一个以上的结果,能不能在INNER JOIN的ON中加一个条件取得时间最大的那个得到一条关联的数据啊
--------------------------------------------------
高手请帮帮了
回复

使用道具 举报

0

主题

58

帖子

32.00

积分

新手上路

Rank: 1

积分
32.00
发表于 2020-2-19 20:15:01 | 显示全部楼层
select a1.*
from a a1
inner join b b1 on a1.id=b1.aid
where b1.time = (select max(b2) from b b2 where b1.id=b2.id and b1.aid=b2.aid )
回复

使用道具 举报

0

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-2-19 21:00:01 | 显示全部楼层
select top 1 ...................order by b.time desc
回复

使用道具 举报

0

主题

58

帖子

32.00

积分

新手上路

Rank: 1

积分
32.00
发表于 2020-2-19 21:15:01 | 显示全部楼层
select a1.*
from a a1
inner join b b1 on a1.id=b1.aid
where b1.time = (select max(b2.time) from b b2 where b1.id=b2.id and b1.aid=b2.aid )
回复

使用道具 举报

1

主题

3

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
 楼主| 发表于 2020-2-20 19:45:02 | 显示全部楼层
可不可以在on中简单的指定一个条件实现啊这样虽然能达到效果可是效率是不是太低了
呵呵
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表