常用sql记录

备份一张表

PostgreSQL

sql 复制代码
CREATE TABLE new_table AS
SELECT * FROM old_table;

-- 下面这个比上面好,这个复制表结构时,会把默认值、约束、注释都复制
CREATE TABLE new_table (LIKE old_table INCLUDING ALL) WITHOUT OIDS;
INSERT INTO new_table SELECT * FROM old_table;

sql 复制代码
CREATE TABLE new_table LIKE old_table;
INSERT INTO new_table SELECT * FROM old_table;

清空一张表的数据

这个命令会清除表中的所有记录,但不会影响表的结构和属性。

请注意,truncate操作是不能回滚的,清除之后的数据无法恢复。使用时请确保已经做好了数据备份或者对当前数据无需保留。

TRUNCATE TABLE table_name;

填充主键

pg数据库,主键的生成规则是自增:

xml 复制代码
nextval('department_department_key_seq'::regclass)
sql 复制代码
UPDATE department SET department_key = nextval('department_department_key_seq'::regclass) WHERE department_key IS NULL;
相关推荐
山峰哥3 分钟前
SQL优化中的索引策略与Explain分析实战
大数据·汇编·数据库·sql·编辑器
galaxyffang9 分钟前
Redis 的 16 个数据库应用场景
数据库·redis·缓存
喜欢猪猪9 分钟前
深度解析 SGLang:大模型编程新范式——从 Prompt Engineering 到 Structured Generation 的系统性跃迁
java·数据库·prompt
·云扬·14 分钟前
利用Orchestrator Hook实现MySQL高可用切换与VIP管理
android·数据库·mysql
小鸡脚来咯1 小时前
MySQL索引优化
sql·mysql
YIN_尹2 小时前
【MySQL】数据库基础
数据库·mysql·adb
秃狼2 小时前
mysql explain 使用入门
数据库·mysql
冰暮流星2 小时前
数据库事务四个特性
数据库
醉卧考场君莫笑2 小时前
sql基础操作
数据库·sql·oracle