DB2对年份的处理Year()
public DataSet GetCustomerAllocListByQC(CustomerAllocQueryDataContract aQC)
{
StringBuilder sql = new StringBuilder();
sql.Append(@"SELECT * FROM
(SELECT
'01' AS CUSTOMERALLOCTYPE,'新车客户' AS CUSTOMERALLOCTYPENAME,
CASE WHEN T1.CUSTOMERGRADE = 'A' THEN 'A'
WHEN T1.CUSTOMERGRADE = 'B' THEN 'B'
WHEN T1.CUSTOMERGRADE = 'C' THEN 'C'
WHEN T1.CUSTOMERGRADE = 'D' THEN 'D'
WHEN T1.CUSTOMERGRADE IS NULL THEN 'D' END AS CUSTOMERGRADE,
T4.CUSTOMERCODE,T4.CUSTOMERNAME,
T4.MOBILEPHONE,T4.MOBILEPHONE1,T4.TELEPHONE,
CASE WHEN T4.SEX = 'F' THEN '?' WHEN T4.SEX = 'M' THEN '?' END AS SEX,
T4.PROFESSIONCODE,T5.COMMONNAME AS PROFESSIONNAME,
T2.CARLICENSENO,T2.FRAMENO,T2.CARMODELPKID,
T8.COMMONNAME AS INSURERNAME, T6.INSURERCODE , T6.INSURANCEBUYDATE, T6.INSURANCEMATURITYDATE
,T3.ORIGINALSALEID,T7.FULLNAME AS ORIGINALSALENAME
,T3.ISALLOC
FROM RM_CARINFO T1
LEFT JOIN VM_CARINFO T2 ON T1.FRAMENO = T2.FRAMENO
LEFT JOIN RT_CARALLOCINFO T3 ON T1.FRAMENO = T3.FRAMENO
LEFT JOIN UM_CUSTOMER T4 ON T4.CUSTOMERCODE = T2.CUSTOMERCODE
LEFT JOIN CM_COMMONCODE T5 ON T4.PROFESSIONCODE = T5.COMMONCODE AND T5.CODETYPE = 'CC01'
LEFT JOIN (SELECT MAX(BUYDATE) AS BUYDATE ,FRAMENO FROM RT_INSURANCEBUY GROUP BY FRAMENO) T61 ON T1.FRAMENO =T61.FRAMENO
LEFT JOIN RT_INSURANCEBUY T6 ON T61.FRAMENO=T6.FRAMENO AND T61.BUYDATE=T6.BUYDATE
LEFT JOIN CM_STAFF T7 ON T3.ORIGINALSALEID = T7.STAFFPKID
LEFT JOIN CM_COMMONCODE T8 ON T6.INSURERCODE = T8.COMMONCODE AND T5.CODETYPE = 'CC12'
WHERE YEAR(T1.PURCHASEDATE) = YEAR(CURRENT TIMESTAMP) - 1 AND T6.INSURERCODE IS NOT NULL AND T3.ISALLOC = 'N' AND VALUE(T3.NOTCALL,'N') = 'N'
AND VALUE(T1.DELETED,'0') = '0' UNION ALL SELECT
'02' AS CUSTOMERALLOCTYPE,'续保客户' AS CUSTOMERALLOCTYPENAME,
CASE WHEN T1.CUSTOMERGRADE = 'A' THEN 'A'
WHEN T1.CUSTOMERGRADE = 'B' THEN 'B'
WHEN T1.CUSTOMERGRADE = 'C' THEN 'C'
WHEN T1.CUSTOMERGRADE = 'D' THEN 'D'
WHEN T1.CUSTOMERGRADE IS NULL THEN 'D' END AS CUSTOMERGRADE,
T4.CUSTOMERCODE,T4.CUSTOMERNAME,
T4.MOBILEPHONE,T4.MOBILEPHONE1,T4.TELEPHONE,
CASE WHEN T4.SEX = 'F' THEN '?' WHEN T4.SEX = 'M' THEN '?' END AS SEX,
T4.PROFESSIONCODE,T5.COMMONNAME AS PROFESSIONNAME,
T2.CARLICENSENO,T2.FRAMENO,T2.CARMODELPKID,
T8.COMMONNAME AS INSURERNAME, T6.INSURERCODE , T6.INSURANCEBUYDATE, T6.INSURANCEMATURITYDATE
,T3.ORIGINALSALEID,T7.FULLNAME AS ORIGINALSALENAME
,T3.ISALLOC
FROM RM_CARINFO T1
LEFT JOIN VM_CARINFO T2 ON T1.FRAMENO = T2.FRAMENO
LEFT JOIN RT_CARALLOCINFO T3 ON T1.FRAMENO = T3.FRAMENO
LEFT JOIN UM_CUSTOMER T4 ON T4.CUSTOMERCODE = T2.CUSTOMERCODE
LEFT JOIN CM_COMMONCODE T5 ON T4.PROFESSIONCODE = T5.COMMONCODE AND T5.CODETYPE = 'CC01'
LEFT JOIN (SELECT MAX(BUYDATE) AS BUYDATE ,FRAMENO FROM RT_INSURANCEBUY GROUP BY FRAMENO) T61 ON T1.FRAMENO =T61.FRAMENO
LEFT JOIN RT_INSURANCEBUY T6 ON T61.FRAMENO=T6.FRAMENO AND T61.BUYDATE=T6.BUYDATE
LEFT JOIN CM_STAFF T7 ON T3.ORIGINALSALEID = T7.STAFFPKID
LEFT JOIN CM_COMMONCODE T8 ON T6.INSURERCODE = T8.COMMONCODE AND T5.CODETYPE = 'CC12'
WHERE YEAR(T1.PURCHASEDATE) <> YEAR(CURRENT TIMESTAMP) - 1 AND T6.INSURERCODE IS NOT NULL AND T6.SALESTYPE = '1' AND T3.ISALLOC = 'N' AND VALUE(T3.NOTCALL,'N') = 'N'
AND VALUE(T1.DELETED,'0') = '0' UNION ALL
SELECT
'03' AS CUSTOMERALLOCTYPE, '应到期客户' AS CUSTOMERALLOCTYPENAME,
CASE WHEN T1.CUSTOMERGRADE = 'A' THEN 'A'
WHEN T1.CUSTOMERGRADE = 'B' THEN 'B'
WHEN T1.CUSTOMERGRADE = 'C' THEN 'C'
WHEN T1.CUSTOMERGRADE = 'D' THEN 'D'
WHEN T1.CUSTOMERGRADE IS NULL THEN 'D' END AS CUSTOMERGRADE,
T4.CUSTOMERCODE,T4.CUSTOMERNAME,
T4.MOBILEPHONE,T4.MOBILEPHONE1,T4.TELEPHONE,
CASE WHEN T4.SEX = 'F' THEN '?' WHEN T4.SEX = 'M' THEN '?' END AS SEX,
T4.PROFESSIONCODE,T5.COMMONNAME AS PROFESSIONNAME,
T2.CARLICENSENO,T2.FRAMENO,T2.CARMODELPKID,
T8.COMMONNAME AS INSURERNAME, T6.INSURERCODE , T6.INSURANCEBUYDATE, T6.INSURANCEMATURITYDATE
,T3.ORIGINALSALEID,T7.FULLNAME AS ORIGINALSALENAME
,T3.ISALLOC
FROM RM_CARINFO T1
LEFT JOIN VM_CARINFO T2 ON T1.FRAMENO = T2.FRAMENO
LEFT JOIN RT_CARALLOCINFO T3 ON T1.FRAMENO = T3.FRAMENO
LEFT JOIN UM_CUSTOMER T4 ON T4.CUSTOMERCODE = T2.CUSTOMERCODE
LEFT JOIN CM_COMMONCODE T5 ON T4.PROFESSIONCODE = T5.COMMONCODE AND T5.CODETYPE = 'CC01'
LEFT JOIN (SELECT MAX(BUYDATE) AS BUYDATE ,FRAMENO FROM RT_INSURANCEBUY GROUP BY FRAMENO) T61 ON T1.FRAMENO =T61.FRAMENO
LEFT JOIN RT_INSURANCEBUY T6 ON T61.FRAMENO=T6.FRAMENO AND T61.BUYDATE=T6.BUYDATE
LEFT JOIN CM_STAFF T7 ON T3.ORIGINALSALEID = T7.STAFFPKID
LEFT JOIN CM_COMMONCODE T8 ON T6.INSURERCODE = T8.COMMONCODE AND T5.CODETYPE = 'CC12'
WHERE T6.INSURERCODE IS NOT NULL AND T6.SALESTYPE = '0' AND T3.ISALLOC = 'N' AND VALUE(T3.NOTCALL,'N') = 'N'
AND VALUE(T1.DELETED,'0') = '0'
) T
WHERE 1=1 "); if(aQC.CustomerName != string.Empty)
{
sql.Append(" and T.CustomerName like '%" +aQC.CustomerName+ "%'");
}
if(aQC.CallNo != string.Empty)
{
sql.Append(" and (T.MobilePhone like '% " +aQC.CallNo+ "%' or T.MobilePhone1 like '%" +aQC.CallNo+ "%' or T.Telephone like '%" +aQC.CallNo+ "%')");
}
if(aQC.ProfessionCode != string.Empty)
{
sql.Append(" and T.ProfessionCode = "+ aQC.ProfessionCode);
}
if(aQC.CarLicenseNo != string.Empty)
{
sql.Append(" and T.CarLicenseNo like '%" +aQC.CarLicenseNo+ "%'");
}
if(aQC.FrameNo != string.Empty)
{
sql.Append(" and T.FrameNo like '%" +aQC.FrameNo+ "%' ");
}
if(aQC.CustomerAllocType != string.Empty)
{
sql.Append(" and T.CustomerAllocType = " + aQC.CustomerAllocType);
}
if(aQC.InsureCompanyCode != string.Empty)
{
sql.Append(" and T.InSurerCode = " + aQC.InsureCompanyCode);
}
if(aQC.CustomerGrade != string.Empty)
{
sql.Append(" and T.CustomerGrade = " + aQC.CustomerGrade);
}
if(aQC.InsuranceMaturityDateFrom != string.Empty)
{
sql.Append(" and T.InsuranceMaturityDate >= " + aQC.InsuranceMaturityDateFrom);
}
if(aQC.InsuranceMaturityDateEnd != string.Empty)
{
sql.Append(" and T.InsuranceMaturityDate <= " + aQC.InsuranceMaturityDateEnd);
} DataSet ds = new DataSet();
FillDataSet(sql.ToString(),ds,new string[]{"Tmp_CustomerAllocInfo"});
ds.AcceptChanges();
return ds;
}
DB2对年份的处理Year()的更多相关文章
- db2基础
DB2知识文档 一.db2 基础 基本语法 注释:"--"(两个减号) 字符串连接:"||" 如set msg='aaaa'||'bbbb',则msg为'aaa ...
- DB2 SQL 日期函数
DB2 SQL 日期函数1:CURRENT TIMESTAMP 函数:获取当前日期时间语法:CURRENT TIMESTAMP参数:当前日期时间返回值:当前日期时间 2:CURRENT DATE 函数 ...
- DB2常用命令
DB2安装启动服务中启动不了,可用command启动并查看windows系统的日志.1.启动数据库 db2start2.停止数据库 db2stop3.连接数据库运行 db2命令之前要先运行db2c ...
- DB2常用sql函数 (转载)
http://www.techonthenet.com/sql/index.php 一.字符转换函数 1.ASCII() 返回字符表达式最左端字符的ASCII 码值.在ASCII()函数中,纯数字的字 ...
- DB2 函数大全
DB2函数大全 函数名 函数解释 函数举例 AVG() 返回一组数值的平均值. SELECTAVG(SALARY)FROMBSEMPMS; CORR(),CORRELATION() 返回一对数值的关系 ...
- DB2日期和时间函数汇总
上一篇提到过在DB2中,可以通过SYSIBM.SYSDUMMY1.SYSIBM.DUAL获取寄存器中的值,也可以通过VALUES关键字获取寄存器中的值.则在这篇中,我们直接用VALUES关键字来看看这 ...
- DB2数据类型
DB2数据库的内置数据类型主要分成数值型(numeric).字符串型(character string).图形字符串(graphic string).二进制字符串型(binary string)或日期 ...
- DB2函数大全
DB2函数大全 函数名 函数解释 函数举例 AVG() 返回一组数值的平均值. SELECTAVG(SALARY)FROMBSEMPMS; CORR(),CORRELATION() 返回一对数值的关系 ...
- DB2数据库常用命令
--创建数据库 CREATE DATABASE example AUTOMATIC STORAGE YES --自动存储 ON 'D:\' DBPATH ON'D:\' --指定数据库控制文件的存储路 ...
随机推荐
- SQL SERVER发布与订阅 [原创]
一.配置分发 1.配置分发服务器,注:配置发布与订阅,连接SQLSERVER必须用服务器名登录 2.配置分发 3.选择分发服务器 4.选择快照文件夹 5.设置此文件夹的读写权限为everyone 6. ...
- C#开源系统大汇总(转)
一.AOP框架 Encase 是C#编写开发的为.NET平台提供的AOP框架.Encase 独特的提供了把方面(aspects)部署到运行时代码,而其它AOP框架依赖配置文件的方式.这种 ...
- Linux 下开放指定端口
安装tomcat后,在客户端输入地址 http://localhost:8080/ ,发现默认端口8080不能访问. 由于Linux防火墙默认是关闭8080端口.因此,若要能够访问8080端口,可以 ...
- ACK
ACK (Acknowledgement),即确认字符,在数据通信中,接收站发给发送站的一种传输类控制字符.表示发来的数据已确认接收无误. 目录 1基本介绍 2详细释义 1基本介绍编辑 英文缩 ...
- 【转载】Oracle 11g R2 for Win7旗舰版(64位)- 安装
免责声明: 本文转自网络文章,转载此文章仅为个人收藏,分享知识,如有侵权,请联系博主进行删除. 原文作者:bluepoint2009 原文地址:http://www.cnbl ...
- NYOJ-214 单调递增子序列(二) AC 分类: NYOJ 2014-01-31 08:06 233人阅读 评论(0) 收藏
#include<stdio.h> #include<string.h> int len, n, i, j; int d[100005], a[100005]; int bin ...
- 2014 ACM/ICPC Asia Regional Guangzhou Online
Wang Xifeng's Little Plot http://acm.hdu.edu.cn/showproblem.php?pid=5024 预处理出每个点八个方向能走的最远距离,然后枚举起点,枚 ...
- c++11 pod类型(了解)
啥是POD类型? POD全称Plain Old Data.通俗的讲,一个类或结构体通过二进制拷贝后还能保持其数据不变,那么它就是一个POD类型. 平凡的定义 .有平凡的构造函数 .有平凡的拷贝构造函数 ...
- HDU1058Humble Numbers
Humble Numbers Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u ...
- 如何开始你的CTF比赛之旅-网站安全-
在过去的两个星期里,我已经在DEFCON 22 CTF里检测出了两个不同的问题:“shitsco ”和“ nonameyet ”.感谢所有 的意见和评论,我遇到的最常见的问题是:“我怎么才能在CTFs ...