T-SQL语句 运算符

news/2024/7/16 5:16:02 标签: sql语句, 运算符

T-SQL语言主要由以下几部分组成:
DML(Data Manipulation Lauguage,数据操纵语言):用来查询,插入,删除和修改数据库中的数据,如select,insert,update,delete。
DDL(Data Definition Lauguage,数据定义语言):用来建立数据库,数据库对象和定义其列,大部分是以create开头的命令,如create,alter,drop等。
DCL(Dtat Control Lauguage,数据定义语言):用来控制数据库组件的存取许可,存取权限等,如grant,revoke等。

select语法结构
SELECT <列名> FROM <表名> WHERE < 查询限定条件>
在SQL server中,select语法的语法结构如下:
SELECT select_list
[INTO new_table_name]
FROM table_name
[WHERE searh_conditions]
[GRUOP BY group_by_expression] [HAVING search_conditions]
[ORDER BY order_expression [ASC|DESC] ]

条件表达式:
常量:表示单个指定数据值的符号。一个常量由一个或多个字母,数字字符(字母a~z,A~Z,数字0~9)或符号(!,@,#等)组成。字母,日期和时间数据类型的常量需要用单引号括起来,二进制字符串和数据常量则不需要。
列名:表中列的名称。
{一元运算符}:仅有一个操作数的运算符,其中“+”表示正数,“-”表示负数,“~”表示补数运算符
{二元运算符}:将两个操作数组合执行操作的运算符。二元运算符可以是算术运算符,赋值运算符(=),位运算符,比较运算符,逻辑运算符,字符串串联(或连接)运算符(+)或一元运算符
比较运算符详解

运算符含义
=等于
>大于
<小于
‘>=大于或等于
<=小于或等于
<>不等于
!=不等于,等同于<>
BETWEEN指定值得包含范围(包含边界)。使用AND分隔开始值和结束值
IS[NOT]NULL根据使用的关键字,指定是否搜索空值或非空值。如果有任何一个操作数为NULL,则包含位运算符或算术运算符的表达式的计算结果位NULL
LIKE模糊查询,与指定字符串进行模式匹配
IN是否在数据范围里面

举例:
PRICE > 20 ,表示满足大于20的PRICE值。
PRICE <> 20 ,表示满足不等于20的PRICE值。
PRICE Between 10 AND 20 ,表示满足大于等于10且小于等于20的PRICE值。
NMAE LIKE ‘李%’ ,表示满足NAME姓名字段中姓李的所有姓名。
通配符

通配符解释示例
‘_’任何单个字符name LIKE ‘_ean’将查找以ean结尾的所有四个字母的名字(如dean,sean等)
%任意长度的字符串name LIKE ‘%ean%’将查找所有包含ean的名字(如dean,sean,sheany等)
[]括号中所指定范围内的一个字符name LIKE ‘[C-P]arsen’将查找以arsen结尾且介于C与P之间的任何单个字符开始的名字(如Carsen,Marsen等)
[^]不在括号中所指定范围内的任意一个字符name LIKE ‘car[^afg]’将查找以car开始且其后的字母不为a,f,或g的所有名字(如care,carn等)

举例:
要求表中的电话号码列输入的格式为11位手机号,前两位数字为’13’,可以编写如下约束表达式:
([telnumber] LIKE ‘13[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]’)

逻辑表达式:
逻辑运算符

操作符说明
NOT和其它操作符一起使用,取反的操作
AND组合两个条件,并在两个条件都为TURE时取值为TURE
OR组合两个条件,并在两个条件之一为TURE时取值为TURE

当一个语句中使用了多个逻辑运算符时,首先求NOT的值,然后求AND的值,最后求OR的值。
举例:
采购订单表中的付款方式时信用卡,约束要求是只能是牡丹卡,金穗卡,龙卡或者阳光卡,可以编写如下的约束表达式:
付款方式 = ‘信用卡’ AND 信用卡 IN (‘牡丹卡’,‘金穗卡’,‘龙卡’,‘阳光卡’)


http://www.niftyadmin.cn/n/1425540.html

相关文章

VLAN tag

这四个字节的802.1Q标签头包含了2个字节的标签协议标识&#xff08;TPID&#xff09;和2个字节的标签控制信息&#xff08;TCI&#xff09;。 TPID&#xff08;Tag Protocol Identifier&#xff09;是IEEE定义的新的类型&#xff0c;表明这是一个加了802.1Q标签的帧。TPID包含…

海量数据表的处理方法

分区的方式有水平分区和垂直分区两中。 前者不拆分表结构&#xff0c;只拆分数据&#xff1b;后者拆分表结构&#xff0c;即将某些字段划到其他表中。 当我查询海量数据表时&#xff0c;访问速度特别的慢。朋友建议我两种方案&#xff1a;1、采用每天建个表的机制&#xff0…

通过一个实例来理解路由与路由表

应用背景 下图共有两个不同的网段分别是NetworkA与NetworkB&#xff0c;这两个网段是通过一个路由器&#xff08;Server A&#xff09;来进行数据传递&#xff0c;那么当PC01这台主机想要传送数据到PC11时&#xff0c;它的IP数据包该如何传输&#xff1f; 应用分析 NetworkA&…

IP地址的ABC类划分

简单的说&#xff1a; A类网络的IP地址范围为&#xff1a;1.0.0.1&#xff0d;126.255.255.254&#xff1b; B类网络的IP地址范围为&#xff1a;128.1.0.1&#xff0d;191.255.255.254&#xff1b; C类网络的IP地址范围为&#xff1a;192.0.1.1&#xff0d;223.255.255…

struts中用过滤器(Filter)解决数据库中文的问题

struts中用过滤器&#xff08;Filter&#xff09;解决数据库中文的问题 在web.xml中加上 <filter> <filter-name>Set Character Encoding</filter-name> <filter-class>com.huahang.tj.struts.filters.SetCharacterEncodingFilter</filter-c…

Shell截取字符串方法总结

Linux 的字符串截取很有用。有八种方法。 假设有变量 varhttp://www.aaa.com/123.htm. 1. # 号截取&#xff0c;删除左边字符&#xff0c;保留右边字符。 echo ${var#*//} 其中 var 是变量名&#xff0c;# 号是运算符&#xff0c;*// 表示从左边开始删除第一个 // 号及左边…

Struts HTML标签库学习笔记

Struts HTML标签库学习笔记 <html:form> <html:form>用来创建表单,<html:form>必须包含一个action属性,否则JSP会抛出一个异常. 常用属性: Action 指定用户提交的表单由哪个组件来处理 Enctype 指定表单所用的MIME…

shell 字符串替换

read in_cmd echo $in_cmd > a sed s/[[:space:]]//g -i a ##replace space by ##去掉所以的空格 sed s/,//g -i a ##replace , by ##去掉所以的逗号 va$(cat a)接下就可以对变量va进行判断了。 如果只是输出打印的话&#xff0c;直接输出就可以 re…