来形容我的问题,继承人假设的情景: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