SQL知识三(Day 27)
大家好,好几天都没写博客了。因为自己的一些原因,落下了很多。今天没有学什么新的知识,自己就把以前落下的好好看了一下。好了,今天就先总结一下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)的更多相关文章
- 学习之路三十六:SQL知识总结 - [游标||字符串分割]
好久没有写文章了,今天把前不久项目用到的SQL知识总结一下. 一丶字符串分割 SQL内置函数中是没有Split分割函数的,所以需要自己去实现,不多说,上代码: )) RETURNS @result T ...
- TFS二次开发、C#知识点、SQL知识总结目录
TFS二次开发系列 TFS二次开发系列:一.TFS体系结构和概念 TFS二次开发系列:二.TFS的安装 TFS二次开发系列:三.TFS二次开发的第一个实例 TFS二次开发系列:四.TFS二次开发Wor ...
- TFS二次开发、C#知识点、SQL知识
TFS二次开发.C#知识点.SQL知识总结目录 TFS二次开发系列 TFS二次开发系列:一.TFS体系结构和概念 TFS二次开发系列:二.TFS的安装 TFS二次开发系列:三.TFS二次开发的第一 ...
- Atitit 补充说明 sql知识图谱与线路图attilax总结补充说明
Atitit 补充说明 sql知识图谱与线路图attilax总结补充说明 1. 常见编程语言的分类 :命令式语言.函数式语言.逻辑语言1 1.1. 按照编程语言的代际划分,又2gl,3gl,4gl ...
- java 基础知识三 java变量
java 基础知识 三 变量 1.作用域 {} 包围起来的代码 称之为代码块,在块中声明的变量只能在块中使用 2.常量 就是固定不变的量,一旦被定义,它的值就不能再被改变. 3.变量 变量必须在程序 ...
- 测试人员需要了解的sql知识(提高篇)
上一篇写了一些基础的sql知识,这里再深挖一些常用的 ------------------------------------------------------------------骄傲的分割线- ...
- mysql sql知识总结
SQL知识总结: 检索不同的行: SELECT DISTINCT VEND_ID FROM PRODUCTS; DISTINCT 应用于所有的列 =================== 限制结果: S ...
- Python基础知识(三)
Python基础知识(三) 一丶整型 #二进制转成十进制的方法 # 128 64 32 16 8 4 2 1 1 1 1 1 1 1 例如数字5 : 101 #十进制转成二进制的方法 递归除取余数,从 ...
- SQL Server基础知识三十三问 (15-21)
15. 存储过程可以调用自己么, 或者说可能有递归的存储过程么? SP nesting最多可以到多少层? 答: 可以的. 因为Transact-SQL 支持递归, 你可以编写可以调用自己的存储过程. ...
随机推荐
- heap creation
There two methods to construct a heap from a unordered set of array. If a array has size n, it can b ...
- win10安装数据库:[INS-13001]
升级win10系统之后,需要重新安装Oracle,因为在安装Oralce11g时,使用64位的会出现各种不兼容问题,我每次安装都是使用32位的数据库. 在安装时点击setup.exe之后,出现了:[I ...
- nide.js(二)文件I/O
文件I/O fs模块的基本用法 node.js中提供一个名为fs的模块来支持I/O操作,fs模块的文件I/O是对标准POSIX函数的简单封装. 1.writeFile函数的基本用法 文件I/O,写入是 ...
- spring加载jar包中多个配置文件
转自:http://www.cnblogs.com/GarfieldTom/p/3723915.html <import resource="classpath*:applicatio ...
- 【转】CodeGear RAD 2007 SP4
转自:http://blog.csdn.net/Rzhghost/article/details/2512150 CodeGear RAD 2007 up4最新下载及破解 官方http下载:http: ...
- hdu 4639 Hehe (dp)
一道dp题,转移方程不是自己推出来的. 题目的意思是用‘qnmlgb’替换‘hehe’,可以替换也可以不替换,问有多少种情况. 如果结尾不是‘hehe’,那么dp[i]=dp[i-1],如果是是‘he ...
- RapidMiner的基本使用(一个医疗数据的简单决策树算法分析)
RapidMiner的基本使用(一个医疗数据的简单决策树算法分析) RapidMiner的基本使用(一个医疗数据的简单决策树算法分析) 需要分析的文件: 右键分别创建读取excel数据,选择属性,设置 ...
- js监听input等表单输入框的变化事件oninput
js监听input等表单输入框的变化事件oninput,手机页面开发中使用到文本框textarea输入字符监听文本框变化计算还可以输入多少字符,如果使用onkeyup的话是无法监听到输入法输入的文本变 ...
- firefox 自写底层扩展,源码简介
还记得2010年的时候,那时候开始喜欢上了js,经常逛MDN 一开始写些简单的油猴脚本,慢慢的接触了扩展开发,发现用自己的js知识 加上firefox的插件API,可以完成好多功能. 看了很多插件的源 ...
- hdu 2685 I won't tell you this is about number theory 数论
题目链接 根据公式 \[ gcd(a^m-1, a^n-1) = a^{gcd(m, n)}-1 \] 就可以很容易的做出来了. #include <iostream> #include ...