常用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;
相关推荐
数字护盾(和中)几秒前
BAS+ATT&CK:企业主动防御的黄金组合
服务器·网络·数据库
micro_xx7 分钟前
Matlab 有限元分析三维悬臂梁变形
前端·数据库·matlab
TTc_8 分钟前
oracle中的union和union all有什么区别?
数据库·oracle
cowboy25811 分钟前
mysql5.7及以下版本查询所有后代值(包括本身)
数据库·sql
web3.088899911 分钟前
获得某红书笔记评论说明-item_review
服务器·前端·数据库
风流 少年40 分钟前
mysql mcp
数据库·mysql·adb
知我Deja_Vu1 小时前
redisCommonHelper.generateCode(“GROUP“),Redis 生成码方法
数据库·redis·缓存
寄存器漫游者1 小时前
Linux 线程间通信
数据库·算法
努力的lpp1 小时前
SQLMap CTF 常用命令全集
数据库·web安全·网络安全·sql注入
IvorySQL1 小时前
揭开 PostgreSQL 读取效率问题的真相
数据库·postgresql·开源