Tablename: call
-------------------
|id | name |
-------------------
| 1 | a |
| 2 | b |
| 3 | c |
| 4 | d |
| 5 | e |
-------------------
Tablename: call_detail
--------------------------------
|id | detail | call_id |
--------------------------------
|1 | note-1 | 1 |
|2 | note-2 | 1 |
|3 | note-3 | 2 |
|4 | note-4 | 2 |
|5 | note-5 | 2 |
|6 | note-6 | 3 |
--------------------------------
需要结果
----------------------
| id | name | detail |
| 1 | a | note-2 |
| 2 | b | note-5 |
| 3 | c | note-6 |
| 4 | d | null |
| 5 | e | null |
----------------------
如何左联接两个表的最后一个插入id
im need left join call.id=call\u detail.call.id最后一条记录
有办法吗
你能用一个简单的抽样来说明吗
2条答案
按热度按时间jw5wzhpr1#
对call\u detail表的查询执行联接,而不是对整个表执行联接,因为在执行联接之前需要在表中进行筛选,以便能够正确筛选表。你需要用左连接。
使用以下查询:
您可以看到它在这里工作:sql fiddle
注意:由于关键字的原因,我使用了name calls而不是call。
xpszyzbs2#
您需要创建一个子查询并将其用作虚拟表。比如:
编辑:我添加了左连接:)