乘风原创程序

  • 一篇文章带你入门SQL编程
  • 2022/2/7 10:37:11
  • 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的查询编辑器才能识别并处理,编辑其他应用程序时不能使用该命令。 

    总结

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