时间:2021-07-01 10:21:17 帮助过:3人阅读
select top 2 name into #A from student where isnull(id,0)=0 and id like‘a%‘
<1>.首先说一下在这里的select语句中使用的into吧,这里我们经常遇到的情况是select 表字段 from 表名字,但是这里在from前面添加了一个into,其实这里就是把查询出来的表字段以及内容添加到一个新的表中;
<2>.再来说一下前面的 isnull(参数1,参数2) 判断参数1 是否为NULL,如果是 返回参数2 否则返回参数1;而在这里碰到的情况就是:isnull(列名,0) : isnull()函数是用来判断列名是否为null 如果为NUll 则返回0 否则 返回列名的值;而<>:是不等号 与!= 一样 比如: select 3 where 1<>2 查出来的结果是3 select 3 where 1<>1则查不出结果;isnull(列名,0)<>0: 先判断 列名是否为null ,然后再与0比较 等于零返回结果为True 否则为False.
二. sql server中 case when用法
update NAME set a.ID=case b.BID when 10 then 1 else 2 end from STUDENT a join #C c on a.id = c.CID
这里看到这个就知道啦吧,其实就是判断一下的,分情况。之前的我并没有接触很多的这个,看到时间并没有搞明白要干嘛,但是我知道case是一个方法,嘿嘿。这就是sql server的奇妙啊。
三. insert语句和select语句的混合使用
insert into Register select ID,‘abc‘,USERNAME,PWD,cast(MDPWD as varchar(50)) from STUDENT;
在这里就是在已经存在的Register 表中插入后面select出来的信息,但是从insert语句中我们知道,似乎插入信息时间需要添加到values()中,但是在这里我们可以省略,只要我们添加的是Register表中的所有字段即可,这里的“abc”可以是一个存储过程的返回的字段的信息,也可以是一个调用的一个方法查询出来的信息;
另外就是想说一下cast的用法,这里使用cast其实就是将一种数据类型的表达式转换为另一种数据类型的表达式。
暂时先写到这里吧,嘿嘿,要午休啦,接下来会努力的整理sql的语法以及存储过程的一些知识吧,之前的自己在这个方法是在是太薄弱啦,加油加油,嘿嘿。
SQL SERVER数据库新认识的一些基础知识
标签: