编辑: hgtbkwd | 2015-12-22 |
计算机'
SELECT @age as 年龄 例1:重新 建立学生、课程、选课表 例5-1-2:定义一个变量@score,将选课表中的最高成绩赋值给它.Use studentDECLARE @score int SELECT @score=MAX(grade)FROM scSELECT @score AS 最高成绩 5.1 Transact-SQL语言 其他Transact-SQL语句还有:(1)注释语句, 用于多行注释(2) - -(注释语句) :用于单行或嵌套注释(3) PRINT: 终端输出语句格式:PRINT 文本字符串/ @字符数据类型变量/@@返回字符串结果的函数/字符串表达式功能: 将用户定义的消息返回客户端.必须是 char 或varchar,或者能够隐式转换为这些数据类型.示例:PRINT '
ABCDEFG'
5.1 Transact-SQL语言 例5-1-3:定义变量@score、@sno、@cno, 类型分别为 int 、char (4)、char(4), 并赋值给它们. DECLARE @score int , @sno char(4)DECLARE @cno char(4)变量声明SELECT @sno='
s1'
, @cno='
c2'
变量赋值 SELECT @score=grade --查询赋值 FROM sc WHERE sno= @sno and cno=@cnoSELECT @score AS 成绩 --查询变量值 5.1 Transact-SQL语言 (2)全局变量 系统提供、系统赋值 只报告系统活动信息和连接信息 可以在脚本中引用全局变量由SQL Server系统定义和维护,用户不能给全局变量赋值或直接更改其中的值.全局变量的名字前有两个@, 即@@. 全局变量对于检查SQL Server环境的某些信息或条件是有用的.示例:查看SQL Server版本号.SELECT @@version 5.1 Transact-SQL语言 3. 运算符 (复习回顾)运算符的类型: ? 算术运算符 ? 比较运算符 ? 字符串连接运算符 ? 逻辑运算符(1) 算术运算符:求余)(2) 比较运算符: 5.1 Transact-SQL语言 (3) 字符串连接运算符:+. 例: print '
asd'
+ '
dfg'
+ '
1234'
结果为: '
asddfg1234 空串('
'
)作为单个空格处理.例: '
abc efg '
,结果为'
abc egf '
.(4)逻辑运算符 运算符 含义 ALL 如果一系列的比较都为True,则为True. AND 逻辑与 ANY 如果一系列的比较中任何一个为True,则为True. BETWEEN 如果操作数在某个范围之内,则为真 5.1 Transact-SQL语言 运算符 含义 EXISTS 如果子查询不为空,则为True IN(集合) 如果操作数在集合中,则为真 LIKE 如果操作数与某个字符串匹配,则为真 NOT 逻辑非 OR 逻辑或 SOME 与ANY一样 (5) 运算符优先级 由高到低为: 括号→算术运算符(字符串连接符) → 比较运算符→逻辑运算符→赋值 5.1 Transact-SQL语言 5.1.3 函数SQL Server提供了非常丰富的函数供用户使用,同时也允许用户定义自己的函数.Transact-SQL提供的系统函数: 字符函数(1) SUBSTRING 函数格式:SUBSTRING (,[,])功能:从字符表达式中的第m个字符开始截取n个字符,形成一个新字符串,m,n都是数值表达式.注意:系统函数用SELECT 函数名(参数)进行调用(2) LTRIM函数格式:LTRIM ()功能:删除字符串起始空格函数,返回varchar类型数据 5.1 Transact-SQL语言 (3)RTRIM函数格式:RTRIM ()功能:删除字符串尾随空格函数,返回varchar类型数据.(4)RIGHT函数格式:RIGHT (,)功能:返回字符串中从右边开始指定个数的字符,返回varchar类型数据.(5)LEFT函数格式:LEFT (,)功能:返回字符串中从左边开始指定个数的字符,返回varchar类型数据. 5.1 Transact-SQL语言 (6)UPPER函数格式:UPPER()功能:将小写字符数据转换为大写的字符表达式,返回varchar类型数据.(7)LOWER函数格式:LOWER ()功能:将大写字符数据转换为小写的字符表达式,返回varchar类型数据.(8)REVERSE函数格式:REVERSE ()功能:返回字符表达式的反转.返回varchar类型数据. 5.1 Transact-SQL语言 (9)SPACE函数格式:SPACE()功能:返回由重复的空格组成的字符串.整数表达式的值表示空格个数.返回char类型数据.(10)STUFF函数格式:STUFF(字符表达式1, m ,n , 字符表达式2 )功能:删除指定长度的字符并在指定的起始点插入另一组字符.m,n是整数,m指定删除和插入的开始位置,n指定要删除的字符数,最多删除到最后一个字符.如果m或n 是负数,则返回空字符串.如果m比字符表达式1 长,则返回空字符串.返回char类型数据. 5.1 Transact-SQL语言 (11)CHARINDEX函数格式: CHARINDEX (表达式1 , 表达式2 [ , m ] ) 功能: 在表达式2的第m个字符开始查找表达式1起始字符位置.m是整数表达式,如果m是负数或缺省,则将从表达式2 的起始位置开始搜索.返回int类型数据.(12)LEN函数格式: LEN (字符表达式) 功能: 返回给定字符串表达式的字符个数,不包含尾随空格.(13)ASCII函数格式: ASCII(字符表达式) 功能: 返回给定字符串表达式的最左端字符的ASCII码值.返回整型值. 5.1 Transact-SQL语言 (14)CHAR函数格式: CHAR(整数表达式) 功能: 用于将ASCII码转换为字符,整数表达式的取值范围为0到255之间的整数,返回字符型数据值. 5.1 Transact-SQL语言 数学函数(1)ABS函数格式:ABS(数字表达式) 功能: 返回给定数字表达式的绝对值.(2)EXP函数格式:EXP (数字表达式) 功能: 返回给定数字表达式的指数值.参数数字表达式是 float 类型的表达式.返回类型为float.(3)SQRT函数格式:SQRT(数字表达式) 功能: 返回给定数字表达式的平方根.参数数字表达式是 float 类型的表达式.返回类型为float. 5.1 Transact-SQL语言 (4)ROUND函数格式:ROUND (数字表达式,m) 功能:返回返回数字表达式并四舍五入为指定的长度或精度.(5)RAND函数格式:RAND ([seed]) 功能:返回