惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

雷峰网
雷峰网
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
T
Tailwind CSS Blog
F
Fortinet All Blogs
Microsoft Azure Blog
Microsoft Azure Blog
Jina AI
Jina AI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
N
Netflix TechBlog - Medium
B
Blog RSS Feed
Blog — PlanetScale
Blog — PlanetScale
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
The Blog of Author Tim Ferriss
D
Docker
博客园 - 聂微东
博客园 - 【当耐特】
博客园 - 三生石上(FineUI控件)
L
LangChain Blog
量子位
宝玉的分享
宝玉的分享
博客园 - 司徒正美
The Cloudflare Blog
G
Google Developers Blog
Microsoft Security Blog
Microsoft Security Blog
腾讯CDC

博客园 - 澜心

面向对象语言的new操作 javascript复习一 JavaScript的面向对象 C#在word中插入上标的问题 新建SSIS项目失败或者在SSIS项目中新建包失败 简单数据库操作 往消息队列传数据的存储过程 C#泛型学习 空气污染指数的计算公式是什么?(API) 数据中心和数据仓库,在信息化建设中有何作用? - 澜心 - 博客园 【求助】Vs2005当前不能命中断点 自动加载用户控件问题【找到部分原因】 【讨论】程序员的发展道路如何规划,欢迎大家加入讨论 sql常用函数汇总 网站配色方案学习 用例指南 用例 UseCase 系统分析员基本功 网站安装步骤 sqlserver2000下载地址 SQLServer2000安装图解
行列转换 - 澜心 - 博客园
澜心 · 2007-11-16 · via 博客园 - 澜心

  //查询人员信息的sql语句
            string UsrSql = "select distinct proid,proname from v_ProjectAndUserInfo  "+ con;
            DataTable UserDt 
= GetTable(UsrSql);
            StringBuilder sBuilder 
= new StringBuilder();
            sBuilder.Append(
"SELECT disname as '姓名',");
            
foreach(DataRow row in UserDt.Rows)
            
{
                
string GUID = row["proid"].ToString();
                
string Name = row["proname"].ToString();
                sBuilder.Append(
"SUM(CASE proid WHEN '" + GUID + "' THEN workhours ELSE 0 END) AS '" + Name + "',");
            }
      
     
            
string Ssql = sBuilder.ToString() + "(SELECT SUM(workhours)) AS '合计' ";

            DataTable dt 
= getCountResult(Ssql,con);