如何取得left join的第二表中符合条件的第一条记录?

来源:百度知道 编辑:UC知道 时间:2024/05/31 15:21:11
有表一 tableA
tid username title
1 lily 我公司将进行xx培训
2 angus 关于秋游的通知
3 boss 这个月不发奖金
4 vivi 新产品上市
表二 tableB
tid time txt
1 0809 大家快来。。。。
2 0810 我是新来的,大家好
2 0810 我知道你是新来的。。。
4 0811 价格太贵啦。。。

我想取得相同tid下的tableA的title跟对应的tableB中符合条件的第一条txt记录结合起来使用
我用以下语句达不到效果
SELECT tableA.*, tableB.txt FROM tableA LEFT JOIN tableB ON tableA.tid = tableB.tid ORDER BY tableB.time DESC

注意:上面的tableB中有两条tid为2的记录,那么按我的要求只有前一条被提取。请高手帮忙
用是MYSQL
用left join 没问题,问题是当tableB中符合ON条件的项超过一项时,该如何实现只取第一条去与tableA匹配

不知道怎么产生的问题,ORACLE里面是不会取不到的。。
另外LEFT JOIN会把A中有B中没有的也全部显示出来啊,B没的字段用NULL表示。
你用的什么数据库,MSSQL的话是不是表A,B里面字段有text类型引起的~瞎猜了。

text类型真是强大啊引起无数问题- -我打死都不用他