SQL结构查询语言【Transact-SQL语言——附加的语言元素(一)】

hello,最近开始整理SQL语言的学习笔记,希望能为各位朋友带来帮助,如果我的内容有所纰漏和错误,也麻烦各位朋友及时帮忙指出,以防错误传播,感谢各位的阅读和指教。
下为学习教材,虽然时间有点久,但是我觉得非常好用,有兴趣的朋友可以购买阅读哦~

学习教材:《SQL Sever 使用简明教程(第三版)》 清华大学出版社

Transact-SQL语言——附加的语言元素(一)

Transact-SQL语言还包括了附加的语言元素,这些附加的语言元素主要包括标识符、变量和常量、运算符、表达式、数据类型、函数、控制流语言、错误处理语言及注释等。

1.标识符
在Transact-SQL语言当中,数据库对象的名称就是其标识符。
大多数的标识符是必需的,但是也有一些对象的标识符是可选的,例如表的标识符是必须的,但创建约束时用户可以不提供标识符。
Transact-SQL语言的常规标识符的格式规则如下:
规则一,第一个字符必须是下列字符之一:

  • Unicode标准定义字母,这些字母包括a-z、A-Z以及其他语言的字母字符
  • 下划线_、符号@或者数字符号#。
    【注意:一个@开头的标识符表示局部变量,两个@开头的标识符表示系统内置的函数。以一个#开头的标识符标识临时表或临时存储过程,以两个##开头的标识符标识全局临时对象】

规则二,后需字符可以包括:

  • Unicode标准中定义的字母
  • 基本拉丁字符或十进制数字
  • 下划线_、符号@、数字符号#或美元符号$

规则三,标识符不能是Transact-SQL语言的保留字,包括大写和小写形式
规则四,不允许嵌入空格或其他特殊字符

分割标识符:
包含在“”或者[ ]内的标识符被称为分割标识符
对于不符合格式规则的标识符必须进行分割 例如the price必须分割 [the price]

  • 对象名称中包含了Microsoft SQL Sever保留字是需要使用 例如 [where]
  • 对象名称中使用了未列入限定字符的字符 例如 [ product[1] table]
    【使用“ ”分割的标识符称为引用标识符,使用[ ]分割的称为括号标识符】
    默认情况下只能使用括号标识符,当QUOTED_IDENTIFIER选项设置为ON是,才能使用引用的标识符。
    在这里插入图片描述
    在这里插入图片描述
    2.变量和常量
    在Transact-SQL语言中,可以使用DECLARE语句声明变量。
    注意:
  • 为变量指定名称,且名称的第一个字符必须是@
  • 指定该变量的数据类型和长度
  • 默认情况下将该变量值设置为NULL

在这里插入图片描述
3.3 运算符
运算符是一种符号,用来指定要在一个或多个表示式中执行的操作。
可以使用的运算符可以分为算术运算符、逻辑运算符、赋值运算符、字符串串联运算符、按位运算符、一元运算符及比较运算符等

  • 算术运算符
    +、-、*、/(除法运算,如果两个表达式都是整数,则结果是整数) %(取模运算)
    在这里插入图片描述

  • 逻辑运算符
    ALL、AND、ANY、BETWEEN、EXISTS、IN、LIKE、NOT、OR、SOME
    在这里插入图片描述

  • 赋值运算符
    只有=
    两大用途:1.给变量赋值 2.为表中的列改变列标题
    在这里插入图片描述

  • 字符串串联运算符
    只有一个+
    在这里插入图片描述

  • 位运算符
    &(位与逻辑运算)、|(位或逻辑运算)、^(位异或运算)
    &:当且仅当输入表达式中两个位的值都为1时,结果中的位才被设置为1;否则,结果中的位被设置为0
    |:只要有一个的值为1(可以两个同时为1),结果中的位就被设置为1,只有当两个位的值都为0时,结果中的位才被设置为0
    ^:只有当两个位的值都为0或1时,结果中的位才被设置为0,当只有一个1时,位的值就被设置为1

  • 一元运算符
    +数值为正、-数值为负,~返回数字的非

  • 比较运算符
    =、>、<、>=、<=、<>、!=、!<、!>

在这里插入图片描述
当使用字符串进行比较时,比较字母,M>A
【运算符的优先级】 实在打不下啦 就借用书上的表格啦
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值