如何解決"subquery returns more than 1 row"錯誤
P粉235202573
2023-08-21 17:36:57
<p>我有一個返回多行的查詢,還有另一個查詢,我想設定條件為這些多行中的任何一個值,所以基本上我希望子查詢看起來像這樣:</p>
<pre class="brush:php;toolbar:false;">select *
from table
where id= (多行查詢);</pre>
<p>其中<code>多行查詢</code>傳回多行。所以如果這些行的值是1、2、3,那麼我希望將id設定為1或2或3。 </p>
您可以使用
in()
:或使用連線:
連接在效能方面從不是一個更糟糕的選擇,根據具體情況和您使用的資料庫,可能會提供更好的效能。
=
可以用於子查詢傳回只有一個值的情況。當子查詢傳回多個值時,您需要使用
IN
:例如: