postgresql/lightdb中对应ctas的select into
在postgresql/lightdb中,可以使用SELECT INTO(它不是ISO SQL的一部分,但是因为历史原因存在)
创建一个新表并且用一个查询 计算得到的数据填充它。这些数据不会像普通的 SELECT
那样被返回给客户端。新表的列具有 和SELECT
的输出列相关的名称和数据类型。例如,创建一个只由来自films
的最近项构成的 新表films_recent
:
SELECT * INTO films_recent FROM films WHERE date_prod >= '2002-01-01';
兼容性问题
在SQL 标准中,使用SELECT INTO
表示把值选择 到一个宿主程序的标量变量中,而不是创建一个新表。这实际上就是 ECPG(见第 35 章)和 PL/pgSQL(见第 42 章) 中的用法。 PostgreSQL使用 SELECT INTO
的来表示表创建是有历史原因的,在parse analyze第一步也会先把SELECT转换为CTAS。 最好在新代码中使用CREATE TABLE AS
。
与CREATE TABLE AS
相比,SELECT INTO
不允许指定属性,就像带有USING
的表访问方法或者带有method
TABLESPACE
的表的表空间。 如果必要,使用CREATE TABLE AS。因此,为新表选择默认表访问方法。详细信息请参阅default_table_access_method。tablespace_name
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
2017-01-24 WARN: Establishing SSL connection without server's identity verification is not recommended
2017-01-24 maven parent工程.pom修改后未自动更新
2017-01-24 c++性能之对象与指针性能比较、以及java与c++性能对比实测
2017-01-24 c++性能之map实现性能比较
2017-01-24 MQ内存消耗与积压分析
2017-01-24 c++获取时间戳
2017-01-24 c++学习之map基本操作