2 T-SQL快速上手

简介: 标识符概念:数据库对象的名称

思维导图


5.jpg

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 运算符

包含:算术运算符、逻辑运算符、赋值运算符、连接运算符等与其他语言基本相同

比较运算符

核心作用主要用作用快速的条件查询

运算符 作用
= 判断相等
> 大于
< 小于
>= 大于等于
<= 小于等于
!= <> 不等于
!

运算符优先级:

6.png

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

2

3

4

5

6

7

8

9

10

-- 输入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


目录
相关文章
|
3月前
|
SQL Oracle 关系型数据库
SQL 教程
SQL 教程
28 1
|
3月前
|
SQL XML 数据库
SQL 入门
SQL 入门
|
SQL 存储 关系型数据库
SQL——知识入门
SQL——知识入门
73 0
【SQL之降龙十八掌】01——亢龙有悔:入门10题
【SQL之降龙十八掌】01——亢龙有悔:入门10题
|
SQL 关系型数据库 MySQL
SQL教程学习总结
SQL关键字总是大写,以示突出,表名和列名均使用小写。
97 0
|
SQL 存储 Oracle
SQL 简易教程 上
本节包含SQL 介绍,增删查改语句知识。 什么是数据库 数据库(database)保存有组织的数据的容器(通常是一个文件或一组文件)。 表(table)某种特定类型数据的结构化清单。 SQL 是什么 SQL(发音为字母S-Q-L或sequel)是 Structured Query Language(结构化查询语言)的缩写。SQL 是一种专门用来与数据库沟通的语言。 SQL 的扩展 许多 DBMS 厂商通过增加语句或指令,对 SQL 进行了扩展。这种扩展的目的是提供执行特定操作的额外功能或简化方法。虽然这种扩展很有用,但一般都是针对个别 DBMS 的,很少有两个厂商同时支持这种扩展。标准
124 0
SQL 简易教程 上
|
SQL 存储 关系型数据库
《SQL必知必会》读书笔记,30分钟入门SQL!(三)
本篇文章是 《SQL 必知必会》 的读书笔记,SQL必知必会的英文名叫做 Sams Teach Yourself in 10 Minutes。但是,我肯定是不能够在10分钟就能学会本书所有涉及到的sql,所以就起个名字叫30分钟学会SQL语句。 目前手边的数据库是 mysql,所以以下示例均是由 mysql 演示。由于现在大部分工具都支持语法高亮,所以以下关键字都使用小写。
《SQL必知必会》读书笔记,30分钟入门SQL!(三)
|
SQL 存储 Oracle
SQL 简易教程 中
SELECT TOP 子句 用于规定要返回的记录的数目。 在 MySQL 中使用 LIMIT 关键字。这里查询排名前 3 的网站 SELECT * FROM Websites ORDER BY alexa LIMIT 3; SQL LIKE 操作符 LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。其中 % 替代 0 个或多个字符。_替代一个字符。 通配符 描述 % 替代 0 个或多个字符 _ 替代一个字符 SELECT * FROM Websites WHERE name LIKE 'G%'; 举例: '%a' //以a结尾的数据 'a%' //以a开头的
99 0
|
SQL 存储 Oracle
SQL 简易教程 下
包含视图、函数知识、防止 SQL 注入攻击等内容。 SQL 函数 简介 大多数 SQL 实现支持以下类型的函数。 ❑ 用于处理文本字符串(如删除或填充值,转换值为大写或小写)的文本函数。❑ 用于在数值数据上进行算术操作(如返回绝对值,进行代数运算)的数值函数。 ❑ 用于处理日期和时间值并从这些值中提取特定成分(如返回两个日期之差,检查日期有效性)的日期和时间函数。 ❑ 用于生成美观好懂的输出内容的格式化函数(如用语言形式表达出日期,用货币符号和千分位表示金额)。 ❑ 返回 DBMS 正使用的特殊信息(如返回用户登录信息)的系统函数 SQL 函数不区分大小写。随你的喜好,不过注意保持风格一致
155 0
|
存储 SQL NoSQL
《SQL必知必会》读书笔记,30分钟入门SQL!(一)
本篇文章是 《SQL 必知必会》 的读书笔记,SQL必知必会的英文名叫做 Sams Teach Yourself in 10 Minutes。但是,我肯定是不能够在10分钟就能学会本书所有涉及到的sql,所以就起个名字叫30分钟学会SQL语句。 目前手边的数据库是 mysql,所以以下示例均是由 mysql 演示。由于现在大部分工具都支持语法高亮,所以以下关键字都使用小写。