來形容我的問題,繼承人假設的情景:MySQL的 - 在多個子查詢的結果,使用查詢
(
select user_id, stat
from stats1
where user_id in (select id from users where selected = 1)
)
union
(
select user_id, stat
from stats2
where user_id in (select id from users where selected = 1)
)
union
(
select user_id, stat
from stats3
where user_id in (select id from users where selected = 1)
)
# and so on ...
看看如何在「在哪裏」被多次使用的查詢。我想保存這個查詢的結果,然後使用它。在所有其他查詢中。顯然這很容易,如果通過在PHP中運行該查詢,然後傳遞值,但這可能純粹在MySQL中?
我想你可以使用一些[MySQL視圖](http://dev.mysql.com/doc/refman/5.7/en/view-syntax.html)。我假設引擎會在第一次請求後的請求期間使用緩存 –
您可以將該查詢的結果存儲在mysql變量中,稍後可以引用它。 – 1000111
這通常是用CTE完成的,在mysql和mysql中這些子查詢都很慢。你爲什麼需要它? statsN不應該只是一個表而不是幾個? – e4c5