如何用sql两次查询

有两个表 status, friend有部分如下所示

table:status

-----+----------------
user | content
-----+----------------
user1| content1
-----+----------------
user1| content2
-----+----------------
user3| content3
-----+---------------- user对应多个内容content,即每个用户有多个状态

... | ...


table:friend

-----+----------------
user | friend
-----+----------------
user1| friend1
-----+----------------
user2| friend2
-----+----------------
user1| friend3
-----+---------------- user也可以对应多个friend,friend也是user,
... | ...
---------------------- 意思是一个用户的多个好友

我想在表friend 获取一个用户user1的好友列表,然后再在表status中获取
所有好友的内容content并排序,如何实现?

[code="sql"]select * from status st where st.user IN (select fr.friend from friend fr where fr.user = user1) order by st.content [/code]

select s.content from user u where u.friend = 'user1' left join status s on s.use = 'user1' order by s.content

[code="sql"]select fr.user,fr.friend,st.content from friend fr left join status st on st.user = fr.friend where fr.user = 'zhang1' order by st.content [/code]