簡體   English   中英

將嵌套的SELECT重寫為INNER JOIN MySQL

[英]Rewrite nested SELECT as INNER JOIN MySQL

我有一個查詢使用WHERE IN語句

SELECT DISTINCT(col) 
FROM tab1 
WHERE id>71 AND id<5073 
AND col IN (SELECT DISTINCT(col) FROM tab0 WHERE id>55 AND id<320)

我嘗試使用INNER JOIN重寫它,但結果卻很少。 我究竟做錯了什么?

SELECT DISTINCT(t1.col) 
FROM tab1 as t1 
    INNER JOIN (
        SELECT DISTINCT(col) 
        FROM tab0 WHERE id>55 AND id<320
    ) AS t0o ON t1.col = t0o.col 
WHERE t1.id>71 AND t1.id<5073
SELECT distinct a.col
FROM tab1 AS a
JOIN tab0 AS b
WHERE a.id > 71 AND a.id < 5073
AND b.id > 55 AND b.id < 320
AND a.col = b.col

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM