当前位置: 首页 > news >正文

用php做的大型网站优衣库网站建设

用php做的大型网站,优衣库网站建设,全新微信号2元一个,铆钉机 东莞网站建设前几天写了一篇sqlserver 行转列#xff0c;http://www.cnblogs.com/li-peng/archive/2012/02/01/2334973.html 由于工作需要#xff0c;要把查出来的DataTable实现 行转列#xff0c; 正好这一阵子在用Linq 就做了一个行转列的小例 子 转换前的table: 转换后的table: 代码… 前几天写了一篇sqlserver  行转列http://www.cnblogs.com/li-peng/archive/2012/02/01/2334973.html 由于工作需要要把查出来的DataTable实现 行转列 正好这一阵子在用Linq 就做了一个行转列的小例 子 转换前的table: 转换后的table:  代码里有详细的说明 还有一些参数我都截图了下面有 using System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Text;namespace ConvertToTable {class Program {static void Main(string[] args) {#region 添加一个表 DataTable _dt new DataTable(); _dt.Columns.Add(new DataColumn(staff_id, typeof(int)) { DefaultValue 0 }); //员工 id _dt.Columns.Add(new DataColumn(staff_Name, typeof(string)) { DefaultValue 1 }); //员工名字 _dt.Columns.Add(new DataColumn(staff_TiCheng, typeof(string)) { DefaultValue 1 });//员工提成规则 _dt.Columns.Add(new DataColumn(staff_TiChengAmount, typeof(double)) { DefaultValue 0 }); //提成钱数 _dt.Rows.Add(1, 小李, 零点提成, 60); _dt.Rows.Add(1, 小李, 订房提成, 70); _dt.Rows.Add(2, 小张, 零点提成, 500); _dt.Rows.Add(2, 小张, 订房提成, 60); _dt.Rows.Add(2, 小张, 订单提成, 800); _dt.Rows.Add(3, 小王, 零点提成, 30); _dt.Rows.Add(3, 小王, 订单提成, 900);#endregion//输出原始表 Console.WriteLine(原始表:); DisplayTable(_dt);//输出行转列以后的表 Console.WriteLine(转换以后的表:); DisplayTable(ConvertToTable(_dt)); Console.ReadLine(); }#region 转换表static DataTable ConvertToTable(DataTable source) { DataTable dt new DataTable();//前两列是固定的加上 dt.Columns.Add(staff_id); dt.Columns.Add(staff_Name);//以staff_TiCheng 字段为筛选条件 列转为行 下面有图 var columns (from x in source.Rows.CastDataRow() select x[2].ToString()).Distinct();//把 staff_TiCheng 字段 做为新字段添加进去 foreach (var item in columns) dt.Columns.Add(item).DefaultValue 0;// x[1] 是字段 staff_Name 按 staff_Name分组 g 是分组后的信息 g.Key 就是名字 如果不懂就去查一个linq group子句进行分组 var data from x in source.Rows.CastDataRow() group x by x[1] into gselect new { Key g.Key.ToString(), Items g }; data.ToList().ForEach(x {//这里用的是一个string 数组 也可以用DataRow根据个人需要用 string[] array new string[dt.Columns.Count];//array[1]就是存名字的 array[1] x.Key;//从第二列开始遍历 for (int i 2; i dt.Columns.Count; i) {// array[0] 就是 staff_id if (array[0] null) array[0] x.Items.ToListDataRow()[0][staff_id].ToString();//array[0] (from y in x.Items// where y[2].ToString() dt.Columns[i].ToString()// select y[0].ToString()).SingleOrDefault();//array[i]就是 各种提成 array[i] (from y in x.Itemswhere y[2].ToString() dt.Columns[i].ToString()// y[2] 各种提成名字等于table中列的名字 select y[3].ToString() // y[3] 就是我们要找的 staff_TiChengAmount 各种提成 的钱数 ).SingleOrDefault(); } dt.Rows.Add(array); //添加到table中 }); return dt; }/// summary/// 输出表/// /summary/// param namedt/param static void DisplayTable(DataTable dt) {//输出列的标题 dt.Columns.CastDataColumn().ToList().ForEach(x Console.Write(x \t)); Console.WriteLine();//输出每行的信息 dt.Rows.CastDataRow().ToList().ForEach(x { x.ItemArray.ToList().ForEach(y Console.Write(y.ToString() \t\t)); Console.WriteLine(); }); }#endregion } } //以staff_TiCheng 字段为筛选条件  列转为行  下面有图 //   x[1] 是字段 staff_Name y[2] 各种提成名字等于table中列的名字   本文转自lpxxn博客园博客原文链接http://www.cnblogs.com/li-peng/archive/2012/02/27/2370213.html如需转载请自行联系原作者
http://www.zqtcl.cn/news/523854/

相关文章:

  • 如何学习网站开发酒店网站源码
  • 怎么用nas做网站服务器WordPress云虚拟空间
  • 网站设计 ipad企业品牌推广宣传方案
  • 织梦网站怎么更换模板济南建设厅网站
  • 用wordpress仿站专业做俄语网站建设司
  • 做暧暧网站网站开发 思维导图
  • asp.net做登录注册网站苏醒的wordpress主题怎么样
  • 正能量不良网站推荐2020网站建设单位是什么
  • 固镇网站建设郑州网站seo顾问
  • 新建定制网站费用公司网站手机端和电脑端
  • 网站域名注册地址苏州建设培训中心网站
  • 高端娱乐网站建设沈阳seo专业培训
  • 做播放器电影网站需要多少钱6广州seo公司推荐
  • 笔记本可以做网站吗怎样查看网站是否备案
  • 千灯做网站网站静态和伪静态意思
  • 做境外碎片化旅游的网站wordpress wdcp
  • 整容医院网络建设公司seo实战技术培训
  • 免费服务器建立网站郑州seo线上推广系统
  • 医院网站建设的目的qq小程序源码
  • 郑州seo网站排名优化公司建站行业发展
  • 彭山住房和城乡建设局网站儒枫网网站建设
  • wap asp网站模板下载中企动力骗子公司
  • 中文电商网站模板洛阳网络公司排名
  • 国外毕业设计网站青岛seo服务
  • 自己做的网站怎么发布视频教程廊坊网站排名优化公司哪家好
  • 域名服务器都有了怎么做网站网站开发获取用户微信号登录
  • 淮南建设公司网站企业系统工程
  • 仓山福州网站建设佛山网站制作专业公司
  • 男男做的视频网站扬中网站建设案例
  • 做钓鱼网站用哪种编程语言代理网站备案