sql.append("SELECT SQL_CALC_FOUND_ROWS DISTINCT a.MobileNo as mobileNo,DATE_ADD(c.communeAgainTime,INTERVAL 1 YEAR) as communeExpireTime,c.UserName as userName, COUNT(a.orderId) as palceOrderTimes ");
sql.append("FROM ord_customerinfo a ");
sql.append("JOIN v b ON (a.OrderID = b.OrderID AND b.OrderCategory=1) ");
sql.append("LEFT JOIN bsc_userext c ON (a.MobileNo = c.BindedMobilePhone ) ");
//AND c.vipGrade&2=2
sql.append("WHERE mobileNo<>'' AND b.OrderDate>:searchDateStart AND b.OrderDate<:searchDateEnd ");
sql.append("GROUP BY a.MobileNo,c.vipGrade,c.communeAgainTime,c.umNickName,c.UserName ");
sql.append("SELECT SQL_CALC_FOUND_ROWS username userName,BindedMobilePhone mobileNo,gender,birth,case vipGrade&2 when 2 then '会员' else '非会员' end as vipGrade,DATE_ADD(communeAgainTime,INTERVAL 1 YEAR) communeExpireTime ");
sql.append("FROM bsc_userext WHERE vipGrade&2=2 AND BindedMobilePhone NOT IN(");
sql.append("SELECT DISTINCT a.MobileNo ");
sql.append("FROM ord_customerinfo a ");
sql.append("JOIN v b ON (a.OrderID = b.OrderID AND b.OrderCategory=1)");
sql.append("LEFT JOIN bsc_userext c ON (a.MobileNo = c.BindedMobilePhone ) ");
sql.append("WHERE mobileNo<>'' AND c.vipGrade&2=2 ");
sql.append("AND b.OrderDate>:searchDateStart AND b.OrderDate<:searchDateEnd)");
sql.append("SELECT SQL_CALC_FOUND_ROWS DISTINCT a.MobileNo as mobileNo,DATE_ADD(c.communeAgainTime,INTERVAL 1 YEAR) as communeExpireTime,c.UserName as userName, COUNT(a.orderId) as palceOrderTimes ");
sql.append("FROM ord_customerinfo a ");
sql.append("JOIN v b ON (a.OrderID = b.OrderID AND b.OrderCategory=14) ");
sql.append("LEFT JOIN bsc_userext c ON (a.MobileNo = c.BindedMobilePhone ) ");
sql.append("WHERE mobileNo<>'' AND b.OrderDate>:searchDateStart AND b.OrderDate<:searchDateEnd ");
sql.append("GROUP BY a.MobileNo,c.vipGrade,c.communeAgainTime,c.umNickName,c.UserName ");
sql.append("SELECT SQL_CALC_FOUND_ROWS Name courseName,mobileNO mobileNo,UserName userName,gender,DATE_ADD(communeAgainTime,INTERVAL 1 YEAR) AS communeExpireTime,case vipGrade&2 when 2 then '会员' else '非会员' end as vipGrade,dayweek dayOfWeek,COUNT(dayweek) palceOrderTimes from (");
sql.append("SELECT cs.Name,OC.mobileNO,u.UserName,u.communeAgainTime,u.vipGrade,u.Gender,dayofweek(orderitem.playDate) dayweek FROM v od ");
sql.append("JOIN ord_orderitem orderitem ON (od.OrderID = orderitem.OrderID) ");
sql.append("JOIN prd_course cs ON orderitem.courseId = cs.id ");
sql.append("join ord_customerinfo oc ON (od.OrderID=oc.OrderID) ");
sql.append("JOIN bsc_userext u on (OC.MobileNo=u.bindedMobilePhone) ");
sql.append("SELECT SQL_CALC_FOUND_ROWS Name courseName,mobileNO mobileNo,UserName userName,gender,DATE_ADD(communeAgainTime,INTERVAL 1 YEAR) AS communeExpireTime,case vipGrade&2 when 2 then '会员' else '非会员' end as vipGrade,COUNT(*) palceOrderTimes from (");
sql.append("SELECT cs.Name,OC.mobileNO,u.UserName,u.communeAgainTime,u.vipGrade,u.Gender FROM v od ");
sql.append("JOIN ord_orderitem orderitem ON (od.OrderID = orderitem.OrderID) ");
sql.append("JOIN prd_course cs ON orderitem.courseId = cs.id ");
sql.append("join ord_customerinfo oc ON (od.OrderID=oc.OrderID) ");
sql.append("JOIN bsc_userext u on (OC.MobileNo=u.bindedMobilePhone) ");
sql.append("SELECT SQL_CALC_FOUND_ROWS * from (SELECT cs.Name courseName,oc.MobileNo mobileNo,u.UserName userName,od.OrderNo orderNo,od.actualAmount actualAmount,od.orderCategory orderCategory, od.OrderDate orderDate,orderitem.PlayDate playDate,dayofweek(orderitem.playDate) dayOfWeek,orderitem.TeeTime teeTime from v od ");
sql.append("JOIN ord_orderitem orderitem ON (od.OrderID = orderitem.OrderID) ");
sql.append("JOIN prd_course cs ON orderitem.courseId = cs.id ");
sql.append("join ord_customerinfo oc ON (od.OrderID=oc.OrderID and oc.MobileNo<>'') ");
sql.append("left JOIN bsc_userext u on (OC.MobileNo=u.bindedMobilePhone) where od.orderDate >=:searchDateStart AND od.orderDate <=:searchDateEnd union all SELECT cs.Name courseName,oc.MobileNo mobileNo,u.UserName userName,od.OrderNo orderNo,od.actualAmount actualAmount,od.orderCategory orderCategory, od.OrderDate orderDate,orderitem.PlayDate playDate,dayofweek(orderitem.playDate) dayOfWeek,orderitem.TeeTime teeTime from v od ");
sql.append("JOIN ord_eventactivityorderitem orderitem ON (od.OrderID = orderitem.OrderID) ");
sql.append("JOIN prd_course cs ON orderitem.courseId = cs.id ");
sql.append("join ord_customerinfo oc ON (od.OrderID=oc.OrderID and oc.MobileNo<>'') ");
sql.append("left JOIN bsc_userext u on (OC.MobileNo=u.bindedMobilePhone) where od.orderDate >=:searchDateStart AND od.orderDate <=:searchDateEnd ) temp where 1=1 ");