SQL还能够这么玩儿

      对于数据库的增删改查,咱们都再熟悉不过了,今天,将和您一块儿探讨几种不同的SQL用法,原来,SQL还能够这么玩儿。数据库

      如下是数据库的原表,如图-1。       ide

 

      一、快速复制表结构      测试

      这时,若是咱们须要复制一份如出一辙的表结构,您会怎么操做呢?固然,您能够经过导出表结构,再执行SQL脚本,这样确定是能够达到目的的,再或者,您也能够再建一份如出一辙的表,这样也能够达到目的。可是,若是有十几个字段呢,几十个字段呢,甚至上百个字段呢?这时我相信绝大部分人都不会这么干了,下面咱们来看另一种用法。我们不妨执行一下如下的SQL语句来看看结果:spa

select * into T_Class_BF from T_Class where 1<>1;
select * from T_Class_BF;
View Code

      再或者,执行一下如下SQL语句。3d

  select top 0 * into T_Class_B from T_Class;
  select * from T_Class_B;
View Code

      怎么样,当您再刷新数据库的时候,是否是发现多了两个跟T_Class结构如出一辙的表T_Class_BF和表T_Class_B呢?经过这种方法,能够快速的复制表结构。到这里有人就会问了,有了表结构没有数据怎么办呢?莫非我还要一条一条的添加数据么,固然不是了!code

      二、复制表数据      blog

      最常规的方法,咱们能够选中以有的表,而后导出数据脚本,这样的话能够将数据导出到一个SQL脚本,而后执行一下这个脚本,确定是能够获得想要的结果的,可是,执行如下SQL语句,更能快速的实现将数据从一个表导入到另外一个表,请看示例:get

  select * from T_Class_BF;
  
  insert into T_Class_BF(ClassName,Count,AddDate,IsDel)
  select ClassName,COUNT,AddDate,IsDEl from T_Class;
  select * from T_Class_BF;
View Code

      如下是执行结果:如图-2。event

      三、快速插入演示数据      class

      在咱们操做数据库的时候,不少时候,新建了一个表,可是表里刚开始却没有数据,如何快速的往表里添加大量的演示数据呢?除了一遍一遍执行SQL以外没有别的办法了吗?办法确定是有的,这里就把平时本身常常用的一种拿来和你们分享如下。说到底也是执行SQL语句,只是执行的语句不同。请看:

      经过上文建立的T_Class_B表此时仍是空的,咱们拿它来演示一下。咱们先经过一行SQL语句插入一条数据:      

 insert into T_Class_B(ClassName,Count,AddDate,IsDel)
 values ('我是测试班级',100,getDate(),1)

      有了这一行语句,咱们即可快速的复制出数据来啦。请先注意一下,目前表里是只有刚才插入的这一条数据的,咱们把如下这条语句执行三遍,再看看表里的数据,如图-3所示,执行的语句:经过结果咱们看到,如今表里的数据变成了8条!8条!     

insert into T_Class_B(ClassName,Count,AddDate,IsDel)
select '我是测试班级',100,getDate(),1 from T_Class_B
View Code

      

      执行了3次以后,竟然有了8条数据。对数据敏感的同窗可能马上会想到了,2的3次方恰好是8,那么恭喜你,答对了。按照以上的方式插入数据,是按照2的N次方来增长的,若是再执行一次,查询结果将会变成16条数据,怎么样,这样用来作演示数据是否是很方便呢?

      但愿对您有所帮助,若有任何问题,愿意一块儿探讨。谢谢!   

相关文章
相关标签/搜索