SELECT T1.REPAIRNO,T1.UNDERTAKER10,T3.FULLNAME          AS RECEIVERNAME,T1.WALKDISTANCE,T1.STATUSCODEDATE10  AS RECEIVETIME,t8.REPAIRTYPE,T5.DELIVEREDDATE,CASE WHEN T2.REPAIRNO IS NULL THEN '否'ELSE '是'END                     ISINSURANCE,T2.FIXEDDATE,T4.FULLNAME          AS CLAIMSNNAME,T2.TotalFee
FROM   RT_REPAIR T1LEFT JOIN RT_INSURANCECLAIMS T2ON  T1.REPAIRNO = T2.REPAIRNOAND T1.FRAMENO = T2.FRAMENOLEFT JOIN CM_STAFF T3ON  T1.UNDERTAKER10 = T3.STAFFPKIDLEFT JOIN CM_STAFF T4ON  T2.ClaimsID = T4.STAFFPKIDLEFT JOIN RT_REPAIRPROCESS T5ON  T1.REPAIRNO = T5.REPAIRNOLEFT JOIN RT_CUSTOMERWISH T6ON  T1.REPAIRNO = T6.REPAIRNOLEFT JOIN RT_WORKCONTENT T7ON  T6.REPAIRNO = T7.REPAIRNOAND T6.WISHID = T7.WISHIDLEFT JOIN RM_RepairType t8ON  t7.RepairTypeCode = t8.repairtypecode
WHERE  T1.FRAMENO = 'LHGRB186982000004'AND STATUSCODE = '99'
ORDER BYREPAIRNO                DESC   

     public DataSet GetCustomerSolicitRepairHisByFrameNo(string aFrameNo){StringBuilder sql = new StringBuilder();sql.Append(" SELECT T1.REPAIRNO, ");sql.Append(" T1.UNDERTAKER10, ");sql.Append(" T3.FULLNAME          AS RECEIVERNAME, ");sql.Append(" T1.WALKDISTANCE, ");sql.Append(" T1.STATUSCODEDATE10  AS RECEIVETIME, ");sql.Append(" T8.REPAIRTYPE, ");sql.Append(" T5.DELIVEREDDATE, ");sql.Append(" CASE  ");sql.Append(" WHEN T2.REPAIRNO IS NULL THEN '否' ");sql.Append(" ELSE '是' ");sql.Append(" END                     ISINSURANCE, ");sql.Append(" T2.FIXEDDATE, ");sql.Append(" T4.FULLNAME          AS CLAIMSNNAME, ");sql.Append(" T2.TOTALFEE ");sql.Append(" FROM   RT_REPAIR T1 ");sql.Append(" LEFT JOIN RT_INSURANCECLAIMS T2 ");sql.Append(" ON  T1.REPAIRNO = T2.REPAIRNO ");sql.Append(" AND T1.FRAMENO = T2.FRAMENO ");sql.Append(" LEFT JOIN CM_STAFF T3 ");sql.Append(" ON  T1.UNDERTAKER10 = T3.STAFFPKID ");sql.Append(" LEFT JOIN CM_STAFF T4 ");sql.Append(" ON  T2.ClaimsID = T4.STAFFPKID ");sql.Append(" LEFT JOIN RT_REPAIRPROCESS T5 ");sql.Append(" ON  T1.REPAIRNO = T5.REPAIRNO ");sql.Append(" LEFT JOIN RT_CUSTOMERWISH T6 ");sql.Append(" ON  T1.REPAIRNO = T6.REPAIRNO ");sql.Append(" LEFT JOIN RT_WORKCONTENT T7 ");sql.Append(" ON  T6.REPAIRNO = T7.REPAIRNO ");sql.Append(" AND T6.WISHID = T7.WISHID ");sql.Append(" LEFT JOIN RM_REPAIRTYPE T8 ");sql.Append(" ON  T7.REPAIRTYPECODE = T8.REPAIRTYPECODE ");sql.Append(" WHERE  T1.FRAMENO = '" + aFrameNo + "' ");sql.Append(" AND STATUSCODE = '99' ");sql.Append(" ORDER BY ");sql.Append(" REPAIRNO DESC ");DataSet ds = new DataSet();FillDataSet(sql.ToString(), ds, new string[] { "Tmp_RepairHis" });//
            string repairNo = string.Empty;string repairType = string.Empty;DataSet cloneDS = new DataSet();cloneDS.Merge(ds);cloneDS.Tables["Tmp_RepairHis"].Clear();var cloneRow = cloneDS.Tables["Tmp_RepairHis"].NewRow();DataRow addRow = null;if (ds.Tables["Tmp_RepairHis"].Rows.Count == 0){return cloneDS;}foreach (DataRow row in ds.Tables["Tmp_RepairHis"].Rows){if (string.IsNullOrEmpty(repairNo)){repairNo = row["REPAIRNO"].ToString();repairType = row["REPAIRTYPE"].ToString();}else if (repairNo == row["REPAIRNO"].ToString()){if (row["REPAIRTYPE"] != null && row["REPAIRTYPE"] != DBNull.Value){repairType = repairType + "," + row["REPAIRTYPE"].ToString();}}else{AddNewCloneRow(addRow, cloneRow, repairNo, repairType, cloneDS);cloneRow = cloneDS.Tables["Tmp_RepairHis"].NewRow();repairNo = row["REPAIRNO"].ToString();repairType = row["REPAIRTYPE"].ToString();}addRow = row;}AddNewCloneRow(addRow, cloneRow, repairNo, repairType, cloneDS);cloneDS.AcceptChanges();return cloneDS;}

     private static void AddNewCloneRow(DataRow row, DataRow cloneRow, string repairNo, string repairType, DataSet cloneDS){cloneRow["REPAIRNO"] = repairNo;cloneRow["REPAIRTYPE"] = repairType;//补充完整其他的数据行cloneRow["UNDERTAKER10"] = row["UNDERTAKER10"];cloneRow["RECEIVERNAME"] = row["RECEIVERNAME"];cloneRow["WALKDISTANCE"] = row["WALKDISTANCE"];cloneRow["RECEIVETIME"] = row["RECEIVETIME"];cloneRow["DELIVEREDDATE"] = row["DELIVEREDDATE"];cloneRow["ISINSURANCE"] = row["ISINSURANCE"];cloneRow["FIXEDDATE"] = row["FIXEDDATE"];cloneRow["CLAIMSNNAME"] = row["CLAIMSNNAME"];cloneRow["TOTALFEE"] = row["TOTALFEE"];cloneDS.Tables["Tmp_RepairHis"].Rows.Add(cloneRow);}

转载于:https://www.cnblogs.com/ShaYeBlog/p/4211813.html

DB2数据库用 With语句分隔字符相关推荐

  1. DB2数据库常用查询语句

    DB2数据库常用查询: 1.DB2查找存储过程语句,存储过程名字大写 SELECT PROCNAME,TEXT,CREATE_TIME,A. * FROM SYSCAT.PROCEDURES a WH ...

  2. DB2 数据库清表语句

    truncate table DWDM2.tablename  IMMEDIATE; alter table DWDM1.tablename  activate not logged initiall ...

  3. Java 技术篇 - java同时连接多种数据库执行sql语句的兼容性验证,数据库类型包括:oracle、sqlserver、DB2、人大金仓、达梦、PG、瀚高、polardb

    Java 操作多类型数据库下的兼容性验证 第一章:数据库测试 ①[ oracle 数据库不支持分号]ORA-00933: SQL 命令未正确结束 ② [sqlserver 数据库不支持 commit] ...

  4. mybatis 向DB2数据库插入自增长的SQL语句报:DB2 SQL Error: SQLCODE=-798, SQLSTATE=428C9, SQLERRMC=ID, DRIVER=4.16.53

    mybatis 向DB2数据库插入自增长的SQL语句报如下错误: SQL语句: <insert id="addUser" parameterType="user&q ...

  5. 查看创建数据库的sql语句

    -- 查看创建数据库的sql语句 #SHOW CREATE DATABASE 数据库名; SHOW CREATE DATABASE db2; ​-- 修改数据库编码 #语法 ALTER DATABAS ...

  6. Linux下安装DB2数据库步骤及常用命令

    前言: 最近有些项目在Linux下使用的是IBM的DB2数据库,感觉没MySQL那样容易了解深入,可能是DB2数据库更倾向于商业化,没MySQL那样开源,相关DB2的资源网上没MySQL那样普及,至于 ...

  7. DB2数据库常见问题汇总

    DB2数据库常见问题汇总 1.1 创建存储过程时需要注意变量声明的顺序 创建存储过程时,声明变量顺序不符合规范将提示: SQL0104N An unexpected token "" ...

  8. 1.MySQL数据库 2.SQL语句

    01数据库概念 * A: 什么是数据库数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作. * B: 什么是数据库 ...

  9. DB2数据库的基础学习

    DB2的特性 完全Web使能的:可以利用HTTP来发送询问给服务器. 高度可缩放和可靠:高负荷时可利用多处理器和大内存,可以跨服务器地分布数据库和数据负荷:能够以最小的数据丢失快速地恢复,提供多种备份 ...

  10. SQLMap的基本使用-靶场墨者学院(DB2数据库)

    小伙伴们大家好,之前为大家讲解了SQLMap的环境搭建,那么本期为大家带来的就是SQLMap的简单使用. 我们使用的靶场是墨者学院的DB2数据库靶场,注意我们的目的是为了练习SQLMap的使用,不是为 ...

最新文章

  1. 路径输入mac下配置NDK开发环境
  2. SpringSecurity认证流程回顾
  3. 单片机 c语言 pwm输出,单片机中PWM程序工作原理图文详解
  4. 我的开发笔记spring等常见问题
  5. python没有数据类型_python基本数据类型都在这里了!
  6. 负载均衡之让nginx跑起来
  7. cesium加载倾斜优化_干货 | 6款倾斜摄影裸眼3D采集软件推荐给大家
  8. Excel VBA使用总结
  9. 路径规划-人工势场法(Artifical Potential Field)
  10. 地区编码(定位中用到的编码)
  11. [哎]关于ftp扫描工具的破解问题
  12. 豆瓣电影小程序服务器,微信小程序实战:仿豆瓣电影
  13. 我的世界血量显示的服务器,Minecraft|世纪之都|服务器mod:拔刀剑 工业2 高级太阳能 血量显示 Nei 聊天泡泡等...
  14. 使用 hydra 破解路由器密码
  15. 电信光猫 TEWA 500AG 破解 超密 2020-3-21
  16. ArkID 一账通:企业级开源IDaaS/IAM平台系统
  17. python3实现阿里云DDNS域名动态解析
  18. 自然语言处理学习2:英语分词1word_tokenize, WordPunctTokenizer, TreebankWordTokenizer , WhitespaceTokenizer等
  19. 数据结构中二叉树的度
  20. 23最新《Android音视频开发进阶指南》,音视频开发者速领

热门文章

  1. Linux操作系统相关命令
  2. Apache Sqoop性能调整
  3. kafka中的数据发送保障
  4. js处理web页面滚动条
  5. 电商网站商品图片放大镜实现
  6. JavaScript设计模式与开发实践 - 单例模式
  7. /etc/profile
  8. WebRTC学习与DEMO资源一览
  9. redis常用命令及安全Redis集群环境搭建
  10. 微软ReportViewer(rdlc)发布时所需要的动态库(vs2010)