zoukankan      html  css  js  c++  java
  • SQL语句之普通行列转换

     
    --修改表名称
    EXEC sp_rename 旧表名,新表名
    --修改表字段名称
    EXEC sp_rename '表.旧字段','新字段','COLUMN'
    --修改表字段类型
    alter table 表 alter column 字段 类型(如:int)
    --查询当前数据库名
    select name from [master].[dbo].[sysdatabases] Where DbId=(Select Dbid From [Master].[dbo].[SysProcesses] Where Spid = @@spid)
    --查询表的字段
    select * from Sys.syscolumns where id=object_id('表')
    --查询是否存在用户表
    if exists(select * from sys.sysobjects where id=object_id('表名') and objectproperty(id,N'IsUserTable')=1)
    print 'exists'

     

     

    SQL语句之普通行列转换     
          
      假设有张学生成绩表(tb_rowtocol)如下   
      Name   Subject   Result   
      张三   语文  73   
      张三   数学  83   
      张三   物理  93   
      李四   语文  74   
      李四   数学  84   
      李四   物理  94   
        
      想变成     
      姓名   语文   数学   物理   
      张三   73  83  93   
      李四   74  84  94   
        
      declare   @sql   varchar(4000)   
      set   @sql   =   'select   Name   as   '   +   '姓名'   
      select   @sql   =   @sql   +   '   ,   sum(case   Subject   when   '''+Subject+'''   then   Result   end)   ['+Subject+']'   
      from   (select   distinct   Subject   from   rowtocol)   as   a   
      set   @sql   =   @sql   +   '   from   rowtocol   group   by   name'   
      exec(@sql)     
          
      如果上述两表互相换一下:即   
      表名(cj)   
      姓名   语文   数学   物理   
      张三   73  83  93   
      李四   74  84  94  

  • 相关阅读:
    C# 杂项
    C# 数组
    我的博客第一天
    Java使用多线程异步执行批量更新操作
    Python爬取百度图片
    以友盟+U-Push为例,深度解读消息推送的筛选架构解决方案应用与实践
    python自动化办公之爬取HTML图片写入PPT实战
    理解Python闭包,这应该是最好的例子
    爬取b站《守护解放西》弹幕
    爬取b站《守护解放西》弹幕
  • 原文地址:https://www.cnblogs.com/luluping/p/1530575.html
Copyright © 2011-2022 走看看