• SQL编程


    1、数学函数:操作一个数据,返回一个结果

      取上限 ceiling  如果有一个小数就取大于它的一个最小整数   列如9.5   就会取到 10

    select code,name,ceiling(price) from car

     

       取下限 floor   如果有一个小数就会舍掉小数点以后的数取整

    select floor(price) from car

     

      ABS 绝对值   一张表中有负数就会变成正数

     

      派PI(),圆周率,括号里不需要加东西

      ROUND 四舍五入

       select round(3.14,1)  l两个参数  前面是一个小数后面是表示保留几位小数

       (3.16,1)输出的结果就是3.2

      SQRT 开根号

      SQUARE平方,自己乘以自己

     

     

    2、字符串函数:

      转换成大写  select upper(pic) from car

      转换成小写  select lower() from car

     

      去空格

      select ltrim('   123   ') 去左空格

      select rtrim('   123   ') 去右空格

     

      space()  里面放几个数字,就打印出几个空格

     

      LEFT ,类似于substring,从左边开头截取

      select LEFT('123456',3)  结果是123

     

      len   长度

      select len('aaaaaa')  返回几个长度

     

       replace  替换

       select replace('aaaaabbaaaaa','bb','haha')   把第一个字符串中的bb替换成haha 

     

       reverse   翻转

       select reverse('abc')     结果是cba

     

        字符串转换函数   str

        select str(1.567,3,1)   把1.567转换成字符串,最多留3位,小数点也算一位,保留小数点后1位

     

        字符串截取 SUBSTRING

        select substring('abcdefg',2,3)    从第二位开始截取,截取的长度是3个,结果就是bcd

        

     

        3、日期时间函数:

            

            获取当前系统时间GETADTE()

            select getdate()    获取的是当前电脑上的时间

            sysdatetime()       获取数据库服务的时间

       

             获取年月日   year month day

             select year('1991-1-1')

         

             判断日期是否正确,isdate  返回  bit

             select isdate('2016-2-30')返回bit类型,如果是false就返回0,true就返回1

      

              添加时间  dateadd

               select dateadd(year,5,'2000-1-1')    第一个参数是要添加什么,第二个是添加多少,第三个是给谁添加

                结果返回的是2005-1-1

     

              返回星期几 datename 返回的值是字符串

              select datename(weekday,'2000-1-1')

         

              也可以返回第几天,按月

              select datename(day,'2000-1-1')

     

              一年中第几天

               select datename(dayofyear,'2000-1-1')

       

               datepart  一样可以返回周几,但是返回的是int类型

              

     

      TSQL编程

      1、索引

         添加索引,设计界面,在任何一列前右键--索引/键--点击进入添加某一列为索引

     

      2、视图

          视图就是我们查询出来的虚拟表

           创建视图:create view 视图名

           as

         SQL查询语句,分组,排序,in 等都不能写

         视图的用法:select * from 视图名

       建立视图查询更方便

        下图,点击执行就保存了视图

           

      下图:从数据库中——视图就可显示

          

     

      3、SQL编程     语法格式

     

        定义变量declare @变量名 数据类型             所有的变量都以@开头

        列如:select @a int

        变量赋值:set @变量名= 值

          set @a=10

     

        

     

      select @a  --直接打印在结果框中

       set @a=10  --赋值,不打印

       select @a  --输出 结果   打印在消息框中

       print @a  --第二种输出方式

     

    变量使用情况:

    查汽车表中名称含有宝马两个字的

      declare @name varchar(20)

      set @name='宝马'

      select * from car where name like '%'+@name+'%'

      

    查汽车表中所有汽车的平均值并输出

    declare @price decimal(10,4)

    select @price=avg(price) from car

    print '所有汽车的平均价格为:'+cast(@price as varchar(20))    表示数据转换

     

    -------------------------------------------------------------------------

     if....else 的用法,if 后面没有小括号,花括号用begin  end  替代

     if 判断条件

     begin

         要执行的语句

     end

     else

     begin 

         要执行的语句

     end

     

      

    --------------------------------------------------------------------------

     declare @a int

     declare @b int

     declare @c int

     set @a=10

     set @b=5

     if @a>@b

     begin

         set @c=@a+@b

     end

     else

     begin

         set @c=@a-@b

     end

     print @c

     

    --------------------------------------------------------------------------------

    C#里的 switch case  变形到数据库里的用法

     

    declare @ccname varchar(20)

     set @ccname='宝马'

     select * from car where name like

     

     case  -- switch...开头

      when @ccname='宝马' then'%宝马%'     当....输出...

      when @ccname='奥迪' then'%奥迪%'

     else '%'    条件都不满足执行这个

     end  --switch.... 结尾

     

    ----------------------------------------------------------------------------

     

    循环:

    注意循环四要素

     

    declare @str varchar(20)

    set @str='你好'

    declare @i int

    set @i=1

     

    while @<=10  条件

    begin

         print @str+cast(@i as varchar(20))

         set @i=@i+1          循环体

    end

     

    -----------------------------------------------

    注意:语句结束之后不要写分号或逗号

     

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    electron—Chromium有酒,Node有肉
    .NET 应用程序运行提示"!!0[] System.Array.Empty()找不到方法"的解决办法
    安装.Net Framework 4.6.2时出现“无法建立到信任根颁发机构的证书链”解决方法
    Electron入门
    npm使用淘宝镜像安装包
    MySQL Unable to convert MySQL date/time value to System.DateTime的解决办法
    axios无法在ie9,10,11环境下运行的问题解决
    解决ini-parser解析ini文件中文乱码问题
    git的tag,branch操作
    java类加载器
  • 原文地址:https://www.cnblogs.com/yp11/p/5742950.html
Copyright © 2020-2023  润新知