乘风原创程序

  • 数据库练习题3--sql基础
  • 2020/10/8 10:42:03
  • 一、练习目的
    1.理解局部变量和全局变量的概念和使用方法;
    2.掌握各种运算符的使用;
    3.掌握基本的SELECT语句的使用方法;
    4.掌握SQL-Server中流程控制语句的使用;
    5.掌握系统函数及用户自定义函数的使用。

    1.定义一个int的整形变量,并分别给其赋值67、123067。

    declare @m int=67
    print @m
    declare @m int=123067
    print @m
    

    2.定义一个长度为11的可变长形字符变量,并分别给其赋值“Hello World!”和“How are you?”。

    declare @z varchar(11)
    set @z='Hello World!'
    declare @z varchar(11)
    set @z='How are you?'
    

    3.分别将字符串“WELCOME”和“student”转换成小写、大写字母。

    select LOWER ('WELCOME')
    select UPPER ('student')
    

    4.使用RTRIM和LTRIM函数分别去掉字符串“ 信电分院 ”右边和左边的空格,再与“学生选课”连接起来。

    select rtrim (' 信电分院 ')
    select ltrim (' 信电分院 ')
    select STUFF (' 信电分院 ',6,2,'学生选课')
    

    5.使用SUBSTRING将字符串“ABCDEFG”中的“CDE”显示出来。

    select SUBSTRING ('ABCDEFG',3,3)
    

    6.使用GETDATE( )函数返回系统当前日期。

    select GETDATE ()
    

    7.使用DAY( )函数提取当前日期的日期部分的整数。

    select DAY (GETDATE())
    

    8.使用T-SQL流程控制语句求斐波那契数列中小于100的所有数。

    DECLARE @Q int
    DECLARE @W int
    DECLARE @E int
    DECLARE @R varchar(2000)
    set @Q =1
    set @W =1
    set @R=cast(@Q as varchar(10))+','+cast(@W as varchar(10))
    while (@W<100)
    begin 
    set @E=@W
    set @W=@W+@Q
    set @Q=@E
    if(@W<100)
    set @R=@R+','+cast(@W as varchar (10))
    end
    print @R
    

    *9. 使用T-SQL流程控制语句求两个数的最大公约数和最小公倍数。

    DECLARE @a int,@b int,@c int,@d int,@x int
    set @c=20
    set @d=10
    set @a=@c
    set @b=@d
    if @a<@b
    begin
    set @x=@b
    set @b=@a
    set @a=@x
    end
    while @b!=0
    begin
    set @x=@a%@b
    set @a=@b
    set @b=@x
    end
    select @a
    select @c*@d/@a
    

    本文地址:https://blog.csdn.net/ssdssa/article/details/108967116