Mysql子查询使用IN时的顺序

Ric*_*pek 5 mysql subquery sql-order-by

mysql子查询中结果的顺序是否影响实际查询的顺序?我尝试过,但没有得出真正的结果,因为有时看起来如此,有时却不然。

例如:

SELECT name FROM people WHERE pid IN (SELECT mid FROM member ORDER BY mdate)
Run Code Online (Sandbox Code Playgroud)

在这种情况下,“order by”子句会影响结果的顺序吗?

谢谢。

Rah*_*thi 3

不,它不能,如果您想根据需要更改顺序,那么最好使用JOIN

像这样的事情:-

select name 
from people p inner join member m on p.pid = m.mid
order by p.name
Run Code Online (Sandbox Code Playgroud)

  • **在这里不起作用**意味着这只是我查询的一小部分,并且它在其他地方引起问题,但您已经在这里回答了我的问题:D (2认同)