Php MySQL:两条记录对一条记录
我有一张这样的桌子Php MySQL:两条记录对一条记录,php,mysql,laravel,Php,Mysql,Laravel,我有一张这样的桌子 id conversation_id messageable_id 1 1 3 <-- 2 1 5 3 2 7 4 2 3 <-- 5 3 7 6 3
id conversation_id messageable_id
1 1 3 <--
2 1 5
3 2 7
4 2 3 <--
5 3 7
6 3 9
如何生成查询
提前感谢。您可以使用MySQL 8.0中提供的lead:
select *
from (
select
conversation_id,
messageable_id sender_id,
lead(messageable_id) over(partition by conversation_id order by id) receiver_id
from mytable
) t
where sender_id = 3
select *
from (
select
conversation_id,
messageable_id sender_id,
lead(messageable_id) over(partition by conversation_id order by id) receiver_id
from mytable
) t
where sender_id = 3