• SQL语句学习笔记


    
    
     1 ---20161107,循环执行sql语句
     2 
     3 declare @i int  --定义循环条件变量
     4 declare @event_id int
     5 set @event_id=6
     6 
     7 --20170310
     8 --查询结果为变量赋值
     9 declare @bi int  
    10 declare @ei int  
    11 select @bi=MIN(id0),@ei=MAX(id0) from MMS_T_D_MEMatStatistics
    12 where event_id=@event_id
    13 select @bi,@ei
    14 
    15 set @i=@bi
    16 while @i<=@ei --设置循环条件
    17 begin
    18 --执行语句
    19 update MMS_T_D_MEMatStatistics
    20 
    21 
    22 --rand():返回0-1的随机数;
    23 --ceil(X):返回 大于等于 X的最小整数;
    24 --floor(x)与 ceil()相反,产生小于等于指定值(x)的最大整数
    25 
    26 ---获取1-1000之间的随机数
    27 set pro_cost=CEILING(rand()*1000),worker_cost=CEILING(rand()*1000),
    28 price=CEILING(rand()*1000),plan_value=CEILING(rand()*1000)  
    29 where event_id=@event_id and id0=@i
    30 
    31 set @i=@i+1
    32 end
     1 DECLARE @Result INT
     2  DECLARE @Upper INT
     3  DECLARE @Lower INT
     4   
     5  SET @Lower = 1      --包括左边的数
     6   
     7  SET @Upper = 11     --不包括右边的数
     8   
     9                     --[left,right)
    10  
    11 SELECT @Result = ROUND(((@Upper - @Lower -1) * RAND() + @Lower), 0)
    12 SELECT @Result
    1 --20161108 条件判断语句case when。。。
    2 select b.task_name,b.scheme as schemeName,d.code_name as exa_flag,
    3 (case when e.dis_deal_type in (2,3) then m.code_name else f.code_name end) as status
    1 ---20161112 用一个表的字段值去更新另一个表的字段
    2 update MMS_T_D_MPMaiRstInfo
    3 set dis_pic_path = PMS_T_D_AssetDisease.origin_image
    4 FROM MMS_T_D_MPMaiRstInfo, PMS_T_D_AssetDisease
    5 WHERE MMS_T_D_MPMaiRstInfo.disease_id = dbo.PMS_T_D_AssetDisease.id0
    6 and MMS_T_D_MPMaiRstInfo.mai_stage=0 AND MMS_T_D_MPMaiRstInfo.dis_pic_path = '' 
    1 --20161220 为查询结果添加自增序号列
    2 select row_number()OVER(ORDER BY id0 DESC) as orderId,* from 
    3 ZY_T_S_ReportTemplate
    --20170310 sql 里面if语句的用法:

    ---20170823 实体表数据复制到临时表
                                select * into #tempDomain from system_group_t_domain_v_0
                                ---20170823 临时表数据插入到实体表
                                insert into system_group_t_domain_v_0
                                select *  from #tempDomain
    ---20171116 查询单表表结构信息
    select * from information_schema.columns where table_name='PMS_T_D_RoadAssetDisease'
    and COLUMN_NAME='degree_type'
    ---20171205 查询数据库表的行数量
    SELECT a.name,b.rows FROM sysobjects a  
    INNER JOIN sysindexes b ON a.id=b.id   
    WHERE b.indid IN(0,1) AND a.Type='u'  
    ORDER BY b.rows  desc
    ----20180315根据in的内容顺序排序
    select * from Bridge
    where bridge_name
    
    in ('笔架桥'
    ,'大坝上石拱桥'
    ,'枫香2号桥'
    ,'枫香大桥'
    )
    
    ORDER BY CHARINDEX(bridge_name,'笔架桥
    ,大坝上石拱桥
    ,枫香2号桥
    ,枫香大桥')
  • 相关阅读:
    Mysql之存储过程与存储函数
    mysql-bin日志自动清理及手动删除
    mysql下面的binlog
    mysql下的数据备份与恢复
    查询mysql数据库中各个表所占空间大小以及索引大小
    mysql执行sql语句报错this is incompatible with sql_mode=only_full_group_by
    docker WARNING: IPv4 forwarding is disabled. 解决方法
    Linux平台修改环境变量的方式
    PuTsangTo
    (一) 从Angular1到Angular2的杂谈
  • 原文地址:https://www.cnblogs.com/lyd2016/p/6039768.html
一二三 - 开发者的网上家园