曂沅仴駦 发表于 2024-8-26 22:52:39

SQL——创建暂时表方法总结

在 SQL 中,创建暂时表可以有多种方法,取决于你想要实现的功能和数据库的类型。以下是两种常见的方法:
1. 利用 WITH 子句(常用于 CTE,公用表表达式)

如果你不需要在多个查询中重复利用暂时表,而且只是想在一个查询中利用中央效果,可以利用 WITH 子句。这种方法不会真正创建物理暂时表,而是生成一个暂时的效果集。
WITH temp AS (
    SELECT column1, column2
    FROM original_table
    WHERE conditions
)
SELECT *
FROM temp
WHERE other_conditions;
2. 利用 CREATE TEMPORARY TABLE

如果你需要创建一个在整个会话中都可以利用的暂时表,可以利用 CREATE TEMPORARY TABLE 语句。这会创建一个物理上的暂时表,存储在会话或连接的内存中,通常在会话结束时自动删除。
CREATE TEMPORARY TABLE temp_table AS
SELECT column1, column2
FROM original_table
WHERE conditions;

-- 然后可以在会话中随时使用 temp_table
SELECT *
FROM temp_table
WHERE other_conditions;
什么时间利用 WITH 子句 vs. CREATE TEMPORARY TABLE



[*]WITH 子句:适用于单个查询中的中央效果集,特殊是在你不需要重复利用暂时效果集时。通常更简便,且性能开销较低。
[*]CREATE TEMPORARY TABLE:适用于你需要在多个查询或整个会话中利用雷同的数据集,而且需要长期性超过单个查询的情况。
根据你的需求,选择合适的方法来创建暂时表。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: SQL——创建暂时表方法总结