SQL根据现有表新建一张表

SQL根据现有表新建表,新建的这张表结构要跟现有表结构相同,但不要现有表里面的数据!

执行DML语句依据数据库类型而定:

SQLITE
-----复制表结构及数据到新表
CREATE TABLE TABLE_NEW AS SELECT * FROM TABLE_OLD;
-----只复制表结构到新表
CREATE TABLE TABLE_NEW AS SELECT * FROM TABLE_OLD WHERE 1=0;

ORACLE:
-----复制表结构及数据到新表
CREATE TABLE T_NEW AS SELECT * FROM TABLE_OLD;
-----只复制表结构到新表
CREATE TABLE T_NEW AS SELECT * FROM TABLE_OLD WHERE 1=0;

MYSQL:
-----复制表结构及数据到新表
CREATE TABLE T_NEW SELECT * FROM T_OLD
-----只复制表结构到新表
CREATE TABLE T_NEW SELECT * FROM T_OLD WHERE 1=2

---无数据库实例,找的资料
DB2:
-----复制表结构及数据到新表
CREATE TABLE TABLE_NAME_NEW AS (SELECT * FROM TABLE_NAME_OLD) DEFINITION ONLY;
--插入数据
INSERT INTO T_NEW (SELECT * FROM TABLE_NAME_OLD);

SQLSERVER :
-----复制表结构及数据到新表
SELECT * INTO T_NEW FROM T_OLD ;
-----只复制表结构到新表
SELECT * INTO T_NEW FROM T_OLD WHERE 1=2;
时间: 2024-11-16 05:07:59

SQL根据现有表新建一张表的相关文章

oracle sql developer 如何同时打开多张表

oracle sql developer 如何同时打开多张表: 步骤: 1.打开oracle sql developer 2."工具"---->"首选项(p)"---->"数据库"------>"对象查看器"---->选中"自动冻结对象查看器窗口(A)" 如下图所示:

mysql将一张表拆分两张表来使用

"SELECT n1.id, n1.nav_name, n1.nav_info, n2.id iid, n2.nav_name nnav_name FROM cms_nav n1 LEFT JOIN cms_nav n2 ON n1.pid=n2.id WHERE n1.id='$this->id' OR n1.nav_name='$this->nav_name' LIMIT 1" 中国军事 id=26 它的 pid=1 通过pid=1找到他的主类, id=pid=1 id

mysql多张表合并一张表进行查找

今天有个需求是 mysql多张表合并一张表查询出该表有多少个userid(去重). 首先我的思路是,把多张表采用union合并成一张表,然后进行group by, 最后进行sum(userid), 得出数量. select COUNT(DISTINCT(`user_id`)) FROM ( select user_id from log_20160706 union select user_id from log_20160707 union SELECT user_id from log_20

设计表:多张表存储学生成绩及各种信息

作业设计表:多张表存储学生成绩及各种信息 需要从表里面体现: 关于学生的:代号 姓名 性别 年龄 班级 关于课程的:代号 名称 关于老师的:代号 姓名 关于成绩的:例如:闫超--网页--90 要能查看学生,课程,老师,成绩的信息 能根据学生代号和课程代号看到成绩 能根据学生代号找到带课老师 通过excel表设计 5. 标清楚列名,类型,长度,备注和关系 这是用escel做的 . 下面是用代码写的 create table class ( code varchar(20) primary key,

sqlserver 把两个sql查询语句查询出来的两张表合并成一张表

第一个sql语句 select companyname gsmc,zb zhibiao from t_gsndzb left join t_companycode on t_gsndzb.gsbh=t_companycode.companyid 查询结果: 第二个sql语句 SELECT min(companyname) gsmc,cast(round(sum(t_xstj.hsje)/10000,2) as numeric(20,2)) ndje FROM t_xstj left join t

sql语句左链接left join--3张表关联

表A---------------------------------关联第一张表B-----------------------关联第二张表c select * fomr 表名A left join 表B  on  表A字段=表B的id left join 表c on 表A字段=表c的id

mysql多表合并为一张表

有人提出要将4张表合并成一张.数据量比较大,有4千万条数据.有很多重复数据,需要对某一列进行去重. 思路: 1.导出数据.select into outfile. 2.传输到要导入数据的服务器上. 3.创建一张新表,主键和约束等与那三张表一样. 4.LOAD DATA INFILE导入.利用replace参数进行覆盖达到去重的目的. LOAD DATA INFILE '/backup/tbl_get.csv' replace INTO TABLE emob.tbl_new; LOAD DATA

使用SQL语句将数据库中的两个表合并成一张表

select * into 新表名 from (select * from T1 union all select * from T2)  这个语句可以实现将合并的数据追加到一个新表中. 不合并重复数据 select * from T1 union all select * from T2  合并重复数据 select * from T1 union select * from T2      两个表,表1 表2 如果要将 表1的数据并入表2用以下语句即可 insert into 表2(字段1,

Sql 把Xml字符串转换成一张表

分享一个Sql技巧,把xml字符串转换成一个表格 1 1 DECLARE @IdHandel INT 2 2 EXEC sp_xml_preparedocument @IdHandel OUTPUT, @Bar_Ip 3 3 4 4 INSERT INTO T_Bar_Ip_Info(Bar_id,Ip_from,Ip_to,IpFromStr,IpToStr,IsHead,AuditStatus,AuditTime,CreateTime) 5 5 SELECT @barId,Ip_from,I