文章目录
📖博主介绍
个人主页: Zinksl
编程社区: Zinksl编程酒馆
个人格言: 想法落实的最佳时机就是现在!🏄
如果你 喜欢交流或热爱分享,欢迎加入编程社区或交流群 大家一起学习技术,交流心得,共同进步🚅
思维导图
1 基本概念
1.1 标识符
概念:数据库对象的名称
1.2 标识符的种类
种类 | 说明 | 案例 |
---|---|---|
常规标识符 | 不用分隔开的标识符 | |
分隔标识符 |
1.3 批处理
批处理,是包含一个或者多个语句的组,从应用一次性发送到SQLserver执行,SqlServer将批处理的语句编译成一个可执行的单元,称为执行计划;
1.4 注释
被标注不执行的
单行注释:-- 注释内容
1.5 常量和变量
(1)常量也被称为文字量或标量值
- 字符串常量:在单引号内
- Unicode字符串:与普通字符串相似,前缀是大写N;
- 二进制常量:前缀是0X且是十六进制数字字符串
- bit常量:0和1
- datetime常量:
- integer常量:
- money常量:前缀$
(2)变量,程序运行过程中可变的量
- 局部变量:是用户自定义变量,它用DECLARE语句声明,作用范围仅在程序内部;局部变量名称以“@”开头;
-- 定义变量
DECLARE @count varchar(4),@count2 varchar(4)
-- 为变量赋值方式1,使用select一次可以赋值多个
select @count=8,@count2=6
-- 为变量赋值方式2,使用set一次只能赋值一个
set @count = 9
select * from HrmResource where id=@count2;
- 全局变量:是SqlServer系统内部事先定义好的变量,用户不能创建,修改;全局变量以@@开头
全局变量名 | 作用 | 备注 |
---|---|---|
@@version | 查看数据库版本 |
1.6 运算符
包含:算术运算符、逻辑运算符、赋值运算符、连接运算符等与其他语言基本相同
比较运算符
核心作用主要用作用快速的条件查询
运算符 | 作用 |
---|---|
= | 判断相等 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
!= <> | 不等于 |
! | 非 |
运算符优先级:
2 流控制
2.1 begin…end
用于将多个语句组合成一个逻辑块;必须成对使用
BEGIN
-- SQL语句块
END
2.2 if…else
用于分支
-- 定义变量
declare @temp int
-- 为变量赋值
set @temp = 77
-- if...else语句执行
if @temp>88
print '很大的数'
else
print '数不够大'
2.3 while
循环
-- 求1-10的和
-- 定义变量
declare @numb int,@numb2 int
select @numb = 1,@numb2 = 0
-- while循环
while @numb < 11
begin
set @numb2 = @numb+@numb2
set @numb = @numb+1
print @numb2
end
2.4 case
根据表达式的真假来确定是否返回某个值,
T-sql 判断相等用“=”
-- 输入1-7打印对应的星期
declare @week int,@temps varchar(50)
set @week = 2
set @temps =
case
when @week = 1
then '星期一'
when @week = 2
then '星期二'
when @week = 3
then '星期三'
when @week = 4
then '星期四'
when @week = 5
then '星期五'
when @week = 6
then '星期六'
when @week = 7
then '星期天'
else '输入有误'
end
print @temps
2.5 waitfor
waitfor延迟语句将它之后的语句在一个指定时间间隔之后执行;
waitfor delay ‘time’
delay:设定等待时间最多24小时
time:设定结束时间点,数据类型必须是datetime "hh:mm:ss"不能包含日期
-- 3秒后输出,hello Word
-- 方式一
waitfor delay '00:00:03'
print 'hello word'
-- 方式二
waitfor time '15:58:40'
print 'hello word'
2.6 goto
用于改变,程序执行的流程,跳到标识符指定的程序再继续往下执行
-- 使用goto 输出1-3
declare @numb int
set @numb = 1
temp:
print @numb
set @numb = @numb+1
while @numb<4
goto temp
结尾彩蛋
认真分享技术,记录学习点滴若内容对你有用可以鼓励一下🍻方式如下
点赞:👍 留言:✍收藏:⭐️
如有疑问欢迎评论区留言,或加入技术交流群:1002743802
关注我订阅专栏,会持续体系化更新哦👈