http://www.cnblogs.com/zhengxu/articles/2206894.html

1.复制表结构及数据到新表

CREATE TABLE 新表 SELECT * FROM 旧表

2.只复制表结构到新表

CREATE TABLE 新表 SELECT * FROM 旧表 WHERE 1=2

即:让WHERE条件不成立.

方法二:(由tianshibao提供)

CREATE TABLE 新表 LIKE 旧表

3.复制旧表的数据到新表(假设两个表结构一样)

INSERT INTO 新表 SELECT * FROM 旧表

4.复制旧表的数据到新表(假设两个表结构不一样)

INSERT INTO 新表(字段1,字段2,.......) SELECT 字段1,字段2,...... FROM 旧表
 
 
如果是 SQL SERVER 2008 复制表结构,使用如下方法:
在表上面右击——编写表脚本为:——Create到——新查询编辑器窗口,你也可以保存为sql文件,
新查询编辑器窗口的话在最上面一条把use databasename改成你要复制过去的数据库名称

如果遇到:

IDENTITY_INSERT 设置为 OFF 时,不能向表 'id' 中的标识列插入显式值。

插入数据的时候不要为id列指定值,也就是
insert into table ( ...)语句中,括号中的字段中不要包含id列。

SQL SERVER 2008
 insert into b(a, b, c) select d,e,f from b;
说明:复制表(只复制结构,源表名:a 新表名:b) 
SQL: select * into b from a where 1<>1
说明:拷贝表(拷贝数据,源表名:a 目标表名:b)
 
SQL: insert into b(a, b, c) select d,e,f from b;
 
说明:显示文章、提交人和最后回复时间
 
SQL: select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b
 
说明:外连接查询(表名1:a 表名2:b)
 
SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c
 
说明:日程安排提前五分钟提醒
 
SQL: select * from 日程安排 where datediff('minute',f开始时间,getdate())>5
 
说明:两张关联表,删除主表中已经在副表中没有的信息
 
SQL:
 
delete from info where not exists ( select * from infobz where info.infid=infobz.infid )
 
说明:--
 
SQL:
 
SELECT A.NUM, A.NAME, B.UPD_DATE, B.PREV_UPD_DATE
 
FROM TABLE1,
 
(SELECT X.NUM, X.UPD_DATE, Y.UPD_DATE PREV_UPD_DATE
 
FROM (SELECT NUM, UPD_DATE, INBOUND_QTY, STOCK_ONHAND
 
FROM TABLE2
 
WHERE TO_CHAR(UPD_DATE,'YYYY/MM') = TO_CHAR(SYSDATE, 'YYYY/MM')) X,
 
(SELECT NUM, UPD_DATE, STOCK_ONHAND
 
FROM TABLE2
 
WHERE TO_CHAR(UPD_DATE,'YYYY/MM') =
 
TO_CHAR(TO_DATE(TO_CHAR(SYSDATE, 'YYYY/MM') || '/01','YYYY/MM/DD') - 1, 'YYYY/MM') ) Y,
 
WHERE X.NUM = Y.NUM (+)
 
AND X.INBOUND_QTY + NVL(Y.STOCK_ONHAND,0) <> X.STOCK_ONHAND ) B
 
WHERE A.NUM = B.NUM
 
说明:--
 
SQL:
 
select * from studentinfo where not exists(select * from student where studentinfo.id=student.id) and 系名称='"&strdepartmentname&"' and 专业名称='"&strprofessionname&"' order by 性别,生源地,高考总成绩
 
说明:
 
从数据库中去一年的各单位电话费统计(电话费定额贺电化肥清单两个表来源)
 
SQL:
 
SELECT a.userper, a.tel, a.standfee, TO_CHAR(a.telfeedate, 'yyyy') AS telyear,
 
SUM(decode(TO_CHAR(a.telfeedate, 'mm'), '01', a.factration)) AS JAN,
 
SUM(decode(TO_CHAR(a.telfeedate, 'mm'), '02', a.factration)) AS FRI,
 
SUM(decode(TO_CHAR(a.telfeedate, 'mm'), '03', a.factration)) AS MAR,
 
SUM(decode(TO_CHAR(a.telfeedate, 'mm'), '04', a.factration)) AS APR,
 
SUM(decode(TO_CHAR(a.telfeedate, 'mm'), '05', a.factration)) AS MAY,
 
SUM(decode(TO_CHAR(a.telfeedate, 'mm'), '06', a.factration)) AS JUE,
 
SUM(decode(TO_CHAR(a.telfeedate, 'mm'), '07', a.factration)) AS JUL,
 
SUM(decode(TO_CHAR(a.telfeedate, 'mm'), '08', a.factration)) AS AGU,
 
SUM(decode(TO_CHAR(a.telfeedate, 'mm'), '09', a.factration)) AS SEP,
 
SUM(decode(TO_CHAR(a.telfeedate, 'mm'), '10', a.factration)) AS OCT,
 
SUM(decode(TO_CHAR(a.telfeedate, 'mm'), '11', a.factration)) AS NOV,
 
SUM(decode(TO_CHAR(a.telfeedate, 'mm'), '12', a.factration)) AS DEC
 
FROM (SELECT a.userper, a.tel, a.standfee, b.telfeedate, b.factration
 
FROM TELFEESTAND a, TELFEE b
 
WHERE a.tel = b.telfax) a
 
GROUP BY a.userper, a.tel, a.standfee, TO_CHAR(a.telfeedate, 'yyyy')
 
说明:四表联查问题:
 
SQL: select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where .....
 
说明:得到表中最小的未使用的ID号
 
SQL:
 
SELECT (CASE WHEN EXISTS(SELECT * FROM Handle b WHERE b.HandleID = 1) THEN MIN(HandleID) + 1 ELSE 1 END) as HandleID
 
FROM Handle
 
WHERE NOT HandleID IN (SELECT a.HandleID - 1 FROM Handle

复制表结构和数据SQL语句(转)的更多相关文章

  1. 复制表结构和数据SQL语句

    select * into 目标表名 from 源表名 insert into 目标表名(fld1, fld2) select fld1, 5 from 源表名 以上两句都是将 源表 的数据插入到 目 ...

  2. SQL语句:在两个数据库间复制表结构和数据数据库

    一.如果两个数据库在同一台服务器上 1.复制表结构和数据:SELECT * INTO DatabaseB.dbo.TableB FROM DatabaseA.dbo.TableA 2.仅仅复制表结构: ...

  3. SQL复制表结构和数据

    1.复制表结构和数据 select * into 目的数据库名.dbo.目的表名 from 原表名 select * into my0735home.dbo.infoMianTest from inf ...

  4. orcale复制表结构及其数据

    http://hi.baidu.com/tag/Oracle/feeds http://hi.baidu.com/gqftuisidibabiq/item/14d306cc87cbdf45bcef69 ...

  5. Oracle复制表结构及数据

    1. 复制表结构及其数据:  create table table_name_new as select * from table_name_old 2. 只复制表结构:  ; 或者: create ...

  6. 【Oracle】【2】复制表结构及其数据

    --复制表结构及其数据 create table table_name_new as select * from table_name_old; --只复制表结构 ; --create table t ...

  7. Sqlite 复制表结构和数据

    复制表结构 ; 复制表结构和数据 create table newTb as select * from oldTb:

  8. mysql复制表结构和数据

    1.复制表结构: create table newName like oldName;//可以复制所有结构. 或者: create table newName select * from oldNam ...

  9. SQL Server 复制表结构以及数据,去除表中重复字段

    --复制另一个数据库中的某张表的结构及数据--select * from Test.dbo.TestTable(查询表中所有数据) --into [表名] 插入当前数据库新表,如果没有该表就创建 se ...

随机推荐

  1. 【Java】 Java网络编程总结

     一.网络编程三要素: IP地址:每个设备在网络中的唯一标识. 端口号:每个程序在设备上的唯一标识. 协议:为计算机网络中进行数据交换而建立的规则或约定的集合. UDP: 面向无连接,数据不安全,速度 ...

  2. 17、RAID和LVM

    一.RAID 1.什么是raid 磁盘阵列(Redundant Arrays of Independent Drives,RAID),有"独立磁盘构成的具有冗余能力的阵列"之意. ...

  3. 第一篇.1、python基础之核心风格

    一.语句和语法 #:注释 \:转译回车,继续上一行,在一行语句较长的情况下可以使用其来切分成多行,因其可读性差所以不建议使用 ::将两个语句连接到一行,可读性差,不建议使用 ::将代码的头和体分开 语 ...

  4. FTP部署与使用

    1.1 环境检查 [root@www ~]# cat /etc/redhat-release #系统版本,6系列等区别不大,都可以 CentOS Linux release 7.5.1804 (Cor ...

  5. 表单的 submit 和 onsubmit 的用法 与区别

    submit与onsubmit 发生顺序:onsubmit -> submit 1.阻止表单提单: <script>function submitFun(){    //逻辑判断   ...

  6. kotlin高阶函数实战&DSL入门

    传统函数演示: 这里以电视节目“非诚勿扰”为例,男人去从一大堆美女当中挑选出自己中意的对象,比如台上有24位妹子,其档案如下: 接下来第一个男嘉宾出场啦,如下: 下面用代码来实现一下,比较简单: 先定 ...

  7. [易学易懂系列|rustlang语言|零基础|快速入门|(18)|use关键词]

    [易学易懂系列|rustlang语言|零基础|快速入门|(18)|use关键词] 实用知识 use关键词 我们今天来讲讲use关键词. 1.简单来说,use是给其他方法或资源定义一个别名,然后调用者, ...

  8. CentOS 7 中英文桌面安装步骤详细图解

    https://www.cnblogs.com/haoliyou/p/7694868.html

  9. JavaScript面向对象OOM 2(JavaScript 创建对象的工厂模式和构造函数模式)

      在创建对象的时候,使用对象字面量和 new Object() 构造函数的方式创建一个对象是最简单最方便的方式.但是凡是处于初级阶段的事物都会不可避免的存在一个问题,没有普适性,意思就是说我要为世界 ...

  10. DevExpress ASP.NET v19.1版本亮点:Pivot Grid等控件

    行业领先的.NET界面控件DevExpress 发布了v19.1版本,本文将以系列文章的方式为大家介绍DevExpress ASP.NET Controls v19.1中新增的一些控件及增强的控件功能 ...