大家好,好几天都没写博客了。因为自己的一些原因,落下了很多。今天没有学什么新的知识,自己就把以前落下的好好看了一下。好了,今天就先总结一下SQL剩下的一些知识吧。

主要学的知识有:循环语句(case语句,if else语句,while语句),跳转语句(break, continue),存储过程,视图,索引,触发器的创建与简单运用。

循环语句:

case语句

输入学生的成绩 1-100之间,否则就会提示"您输入的成绩不对,成绩应该在0-100之间"

declare   @cj float,@str varchar(50)
set @cj=90
set @str=
case --case [表达式] when @cj>100 or @cj<0 then '成绩不对,应该在0——100之间' -- when 条件表达式1 then 结果1
when @cj>=60 and @cj<70 then '及格' -- when 条件表达式2 then 结果2
when @cj>=70 and @cj<80 then '中等' -- ........
when @cj>=80 and @cj<90 then '优良'
when @cj>=90 and @cj<=100 then '优秀' else -- else '成绩不及格' end print '该学生的成绩评语是'+@str --输出

 查找出不同仓库的平均工资

select  *,不同仓库的平均工资=
case
when 仓库号='wh1' then (select AVG(工资) from 职工 where 仓库号='wh1')
when 仓库号='wh2' then (select AVG(工资) from 职工 where 仓库号='wh2')
when 仓库号='wh3' then (select AVG(工资) from 职工 where 仓库号='wh3')
when 仓库号='wh4' then (select AVG(工资) from 职工 where 仓库号='wh4')
end
from 职工

结果:

while语句

计算0——100之间的和

--while 条件表达式
-- begin
--命令行或程序
-- end declare @num int, @sum int
select @num=0,@sum=0
while
@num<=100
begin set @sum=@sum+@num
set @num=@num+1 end
print '1-100之间的和是:'+cast(@sum as varchar(50))

if else语句

某地到青岛的邮政里程为1043,通过邮政局向青岛城区交 "特征专递"邮件, 24小时之内达到。计费每克0.12元
但超过100克,超过数量每克0.05元,算出邮费


declare @yf real,@weight int --声明变量 set @weight=120 if @weight<=100
begin
set @yf=@weight*0.12
end
else
begin
set @yf=100*0.12+(@weight-100)*0.05
end
--输出邮件的重量和邮费 print'邮件的重量是'+cast(@weight as varchar(50)) print '邮费是'+cast(@yf as varchar(50))

结果:

用户登录

declare @name varchar(50),@pwd varchar(50),@msg varchar(50)  --定义变量
select @name='admin',@pwd='123456'
if @name='admin' and @pwd='1256'
begin
set @msg='用户登录成功!'
end
else
begin
set @msg='用户登录失败,请重新登录!'
end print @msg

 跳转语句

break语句

--break 语句
declare @num int,@sum int
select @num=0,@sum=0
while @num<=10
begin
set @num=@num+1
set @sum=@sum+@num
if @sum>30 --当sum和大于30时,跳出整个循环语句
break
end
print '最后结果'+cast(@sum as varchar(50))

 结果:

continue语句

--continue语句
declare @x int,@sums int
select @x=0,@sums=0
while @x<=100
begin
set @x=@x+1
if @x%2=1
continue --跳出当前循环,进行下一个循环
set @sums=@sums+@x
end
print '偶数和'+cast(@sums as varchar(50))

视图view

存储过程

索引

在sql中,讲SQL语句组成一个事物,其目的是保证这一组sql语句能够得到可靠地执行,如果系统中出现了错误,阻碍sql的执行,并且只要其中任何一条语句出现错误,事物中所有的sql语句都不会被执行,说白了要么全部sql执行,要么全部不执行。

create unique index unique_index on 仓库(仓库号)    --创建索引

触发器

触发器是一种特殊的存贮过程,他就相当于c#中的事件触发器主要是通过事件触发而被执行的
create trigger 触发器名称 on 表 for insert[update,delete] as
begin
程序块
end

好了,今天就先写到这里吧,明天再继续。加油!

SQL知识三(Day 27)的更多相关文章

  1. 学习之路三十六:SQL知识总结 - [游标||字符串分割]

    好久没有写文章了,今天把前不久项目用到的SQL知识总结一下. 一丶字符串分割 SQL内置函数中是没有Split分割函数的,所以需要自己去实现,不多说,上代码: )) RETURNS @result T ...

  2. TFS二次开发、C#知识点、SQL知识总结目录

    TFS二次开发系列 TFS二次开发系列:一.TFS体系结构和概念 TFS二次开发系列:二.TFS的安装 TFS二次开发系列:三.TFS二次开发的第一个实例 TFS二次开发系列:四.TFS二次开发Wor ...

  3. TFS二次开发、C#知识点、SQL知识

    TFS二次开发.C#知识点.SQL知识总结目录   TFS二次开发系列 TFS二次开发系列:一.TFS体系结构和概念 TFS二次开发系列:二.TFS的安装 TFS二次开发系列:三.TFS二次开发的第一 ...

  4. Atitit  补充说明 sql知识图谱与线路图attilax总结补充说明

    Atitit  补充说明 sql知识图谱与线路图attilax总结补充说明 1. 常见编程语言的分类  :命令式语言.函数式语言.逻辑语言1 1.1. 按照编程语言的代际划分,又2gl,3gl,4gl ...

  5. java 基础知识三 java变量

    java  基础知识 三 变量 1.作用域 {} 包围起来的代码 称之为代码块,在块中声明的变量只能在块中使用 2.常量 就是固定不变的量,一旦被定义,它的值就不能再被改变. 3.变量 变量必须在程序 ...

  6. 测试人员需要了解的sql知识(提高篇)

    上一篇写了一些基础的sql知识,这里再深挖一些常用的 ------------------------------------------------------------------骄傲的分割线- ...

  7. mysql sql知识总结

    SQL知识总结: 检索不同的行: SELECT DISTINCT VEND_ID FROM PRODUCTS; DISTINCT 应用于所有的列 =================== 限制结果: S ...

  8. Python基础知识(三)

    Python基础知识(三) 一丶整型 #二进制转成十进制的方法 # 128 64 32 16 8 4 2 1 1 1 1 1 1 1 例如数字5 : 101 #十进制转成二进制的方法 递归除取余数,从 ...

  9. SQL Server基础知识三十三问 (15-21)

    15. 存储过程可以调用自己么, 或者说可能有递归的存储过程么? SP nesting最多可以到多少层? 答: 可以的. 因为Transact-SQL 支持递归, 你可以编写可以调用自己的存储过程. ...

随机推荐

  1. 线性表A-B

    1.顺序存储 #include<stdio.h> /* 设有两个顺序表A和B,且都递增有序,试写一算法,从A中删除与B中相同的那些元素,即求A-B */ #define getArrayL ...

  2. MAX Average Problem(斜率优化dp)

    MAX Average Problem Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Othe ...

  3. 利用freopen()函数和fc命令简化程序调试

    大家在参加ACM比赛或者参加c/c++实验技能竞赛的时候,如果遇到大量的输入和大量的输出时,调试起来很不方便.一来如果结果不正确的话,需要重复输入大量数据:二来如果大量输出的话,得仔细检查输出结果与正 ...

  4. Java面试题之数据库三范式是什么

    为了建立冗余较小.结构合理的数据库,设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某一种设计要求的总结.要想设计一个结构合理的关系型数据库,必须满足一定的范式. 在实际 ...

  5. T-SQL流程控制

    常用的T-SQL流程控制有三种,case ... when ... then...(else)...end (as) ... 判断句式,if判断句式和while循环句式. case...when .. ...

  6. node.js(三)url处理

    1.parse函数的基础用法 parse函数的作用是解析url,返回一个json格式的数组,请看如下示例: var url = require('url'); url.parse('http://ww ...

  7. MJExtension

    MJExtension 长话短说下面我们通过一个列子来看下怎么使用 1. 先把框架拉进去你的项目 2. 首先我这次用到的json最外层是一个字典,根据数据的模型我们可以把这个归类为字典中有数组,数组中 ...

  8. Linux下为何都是文件的理解

    所谓“文件”,就是在我们的电脑中,以实现某种功能.或某个软件的部分功能为目的而定义的一个单位. Linux都是以文件的形式存在,当我们访问某个文件(Linux中的文件有目录,连接,普通文本),由于Li ...

  9. Docker镜像与仓库(一)

    Docker镜像与仓库(一) Docker镜像与仓库(一) 如何查找镜像? Docker Hub https://registry.hub.docker.com docker search [OPTI ...

  10. Android 数据库ORM框架GreenDao学习心得及使用总结<二>

    转:http://blog.csdn.net/xushuaic/article/details/24496191 第五篇 查询 查询会返回符合某些特定标准的实体.你可以使用原始的SQL定制查询语句,或 ...