一篇文章带你入门SQL编程

1 学习sql之前回忆一下,什么是变量? 变量:能存储数据的值。变量是一块内存空间的表示。数组一连串空间变量是存储数据的容器(通俗讲) 2 变量分为局部变量和全

1.学习sql之前回忆一下,什么是变量?

变量:能存储数据的值。变量是一块内存空间的表示。数组一连串空间变量是存储数据的容器(通俗讲)

2.变量分为局部变量和全局变量

局部变量的使用是先申明再赋值。

全局变量由系统定义和维护,可以直接使用,但一般不自定义全局变量。

1:局部变量:

局部变量的名称必须以标记@作为前缀

声明局部变量的语句如下:

declare @variable name(局部变量名称)

DataType(数据类型)

局部变量赋值有两种方法:Set语句或Select语句

如图所示:

2:全局变量

SqlServer中的所有全局变量都使用两个@符号作为前缀

常用的几个全局变量:(@@error重点)

@@error上一条SQL错误号
@@identity最后一次插入的标识值
@@rowcount受上一个SQL语句影响的行数
@@serviceName该计算机上的SQL服务名称
@@VersionSQLServer的版本信息

注:程序员不能自己定义全局变量,不能给全局变量赋值

3.select语句和set语句区别

 SetSelect
同时对多个变量赋值不支持支持
表达式返回多个值时出错将返回的最后一个值赋给变量
表达式未返回值时变量将赋值为NULL变量保持原值

注:被赋值的变量的数据来源于数据表的时候,不要用set,选用select

如下图所示:

Declare @stuName nvarchar(32)
Select @stuName=studentname from student
Where studentno=23

4.数据类型转换

cast()与convert()函数

基本语法:

cast(表达式 as 数据类型)

convert(数据类型[(长度)],表达式[,样式])

二者在本质上无任何区别

唯一不同之处是:在将日期时间类型的数据转换为字符串数据时,convert()函数可以通过第三个参数指定转换后字符数据的显示格式不同。

5.逻辑控制语句

1:顺序结构控制语句

begin

语句或语句块

end

2:If-else条件语句(重点)

例如:

统计并显示2013-08-09的oop考试平均分

如果平均分在70以上,显示“考试成绩优秀”,并显示前三名学生的考试信息

如果在70分以下,显示“考试成绩较差”,并显示后三名学生的考试信息    

3:while循环语句

示例:

检查学生“oop”课最近一次考试是否有不及格(60分及格)的学生。

如有,每人加2分,高于95分的学生不再加分,直至所有学生这次考试成绩均及格

注:在SQL中,只有while一种循环,没有do-while和for循环

4:case多分支语句

case-end语句计算一组条件表达式,并返回其中一个符合条件的结果

基本语法:

case

    when 条件1 then 结果1

    when 条件2 then 结果2

    [ else 其他结果]

end

示例:

ABCDE五级打分制显示学生oop课最近一次考试成绩(姓名和等级)

A级:90分以上,B级:80-分,C级:70-分,D级:60-分,E级:60分以下

批处理

GO指令

GO关键字标志着批处理的结束,它是一条或多条SQL语句的集合

作用:

能简化数据库的管理;

批处理可以提高语句执行的效率;

提示: GO是SQL Server特有的批处理命令,只有SQL Server的查询编辑器才能识别并处理,编辑其他应用程序时不能使用该命令。 

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注好代码网的更多内容!         

您可能有感兴趣的文章
centos7安装MySQL教程

国产达梦数据库常用SQL语句(上)

MySQL常用SQL查询语句(含复杂SQL查询)

MySQL细数发生索引失效的情况

mysqlenum字段类型的谨慎如何使用