coalesce( T.GoodsCode,'0') 若 T.GoodsCode 为NULL 这 用0替换

round(S.SaleEarning,2) 保留两位小数

SUBSTRING(zb.accTime,9,2) 截取字符  从第9个开始截取2个

cast(SUBSTRING('111111111111',9,2) as int) 类似 Convert 强制转化

 INSERT INTO "$tableHead$".tb$tableTime$_OperatorMSum(NodeCode ,CounterCode ,OccurDate ,SellOperatorCode)
SELECT distinct B.DeptCode ,coalesce(B.CounterCode,'') CounterCode ,substring(B.accTime,1,8) accTime,coalesce(S.SellOperatorCode,'') SellOperatorCode
FROM "$tableHead$".tb$tableTime$_GiftGrantBill B
left join "$tableHead$".tb$tableTime$_SaleBill S on B.DeptCode=S.DeptCode and B.CounterCode=S.CounterCode
and B.SaleBillNumber=S.BillNumber WHERE B.BillNumber = '$billNumber$'and B.DeptCode ='$nodeCode$'
EXCEPT SELECT NodeCode ,CounterCode ,OccurDate ,SellOperatorCode FROM "$tableHead$".tb$tableTime$_OperatorMSum; UPDATE "$tableHead$".tb$tableTime$_OperatorMSum
SET
SaleMoney= case when $IsCancel$=0 then Round(C.SaleMoney + T.AddMoney,2) else Round(C.SaleMoney - 0,2) end,
SaleCount =case when $IsCancel$=0 then C.SaleCount + 1 else C.SaleCount end,
SaleBackMoney=case when $IsCancel$=0 then Round(C.SaleBackMoney,2) else Round(C.SaleBackMoney-T.AddMoney,2) end,
SaleBackCount=case when $IsCancel$=0 then C.SaleBackCount else C.SaleBackCount+1 end,
SellOperatorCode = T.SellOperatorCode ,
SellOperatorName = T.SellOperatorName
from "$tableHead$".tb$tableTime$_OperatorMSum C ,
(
SELECT
sum(B.AddMoney ) AddMoney ,
substring(B.accTime,1,8) AccDate ,B.DeptCode DeptCode ,
coalesce(B.CounterCode,'') CounterCode ,S.SellOperatorCode ,S.SellOperatorName,B.IsCancel
FROM "$tableHead$".tb$tableTime$_GiftGrantBill B
left join "$tableHead$".tb$tableTime$_SaleBill S on B.DeptCode=S.DeptCode and B.CounterCode=S.CounterCode
and B.SaleBillNumber=S.BillNumber
WHERE B.BillNumber = '$billNumber$' and B.DeptCode ='$nodeCode$'
Group By substring(B.accTime,1,8) ,B.DeptCode, B.CounterCode ,S.SellOperatorCode ,S.SellOperatorName,B.IsCancel ) T
where C.NodeCode = T.DeptCode AND C.CounterCode = T.CounterCode
AND C.OccurDate = T.AccDate AND C.SellOperatorCode = T.SellOperatorCode;

sql 关键字的用法的更多相关文章

  1. sql关键字的解释执行顺序

      sql关键字的解释执行顺序 分类: 笔试面试总结2013-03-17 14:49 1622人阅读 评论(1) 收藏 举报 SQL关键字顺序 表里面的字段名什么符号都不加,值的话一律加上单引号 有一 ...

  2. 标准SQL语言的用法

    原文链接:http://www.ifyao.com/2015/05/18/%E6%A0%87%E5%87%86%E7%9A%84sql%E8%AF%AD%E8%A8%80%E4%BD%BF%E7%94 ...

  3. 9.mybatis动态SQL标签的用法

    mybatis动态SQL标签的用法   动态 SQL MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么 ...

  4. sql 关键字解析

    sql 关键字解析 关键字 解析 union 注意:每个 SELECT 语句,必须列的数量.顺序相同,列的数据类型相似.即:1. UNION 内部的每个 SELECT 语句必须拥有相同数量的列:2. ...

  5. PL/SQL 的一些用法

    变量的声明,赋值,打印(declare是pl/sql里面的用法 variable是sql*plus里面的用法,variable相当于一个sql*plus环境的全局变量,declare里定义的是pl/s ...

  6. [转载]C#中as和is关键字的用法

    这篇文章主要介绍了C#中as和is关键字的用法的相关资料,需要的朋友可以参考下. 原文链接:http://www.jb51.net/article/80944.htm#comments  在程序中,进 ...

  7. C++中typename关键字的用法

    我在我的 薛途的博客 上发表了新的文章,欢迎各位批评指正. C++中typename关键字的用法

  8. java中synchronized关键字的用法

    在java编程中,经常需要用到同步,而用得最多的也许是synchronized关键字了,下面看看这个关键字的用法. 因为synchronized关键字涉及到锁的概念,所以先来了解一些相关的锁知识. j ...

  9. SQL语句---nvl 用法

    SQL语句---nvl 用法   一NVL函数是一个空值转换函数 NVL(表达式1,表达式2) 如果表达式1为空值,NVL返回值为表达式2的值,否则返回表达式1的值. 该函数的目的是把一个空值(nul ...

随机推荐

  1. 【教程】怎样申请Chrome应用商店(Web Store)开发人员

    首先你须要一张信用卡,假设你没有的话.能够借用父母或他人的(多见于学生党) 假设你有信用卡.你还得看看信用卡正面是否有注明"VISA"."MasterCard" ...

  2. Building Microservices: Using an API Gateway

    What are microservices? http://microservices.io/ What are microservices? Microservices - also known ...

  3. sql 语法树 常量

    SELECT id,'|',url,'|',update_time FROM tab LIMIT 10;SELECT COUNT(1) AS parent,(SELECT COUNT(1) FROM ...

  4. 实现静默安装APK的方法

    需要满足的条件: 内置到ROM.即APK包的安装位置是/system/app下. 下面以 test.apk 为例,演示这个操作.需要准备一台已经获得 Root 权限的手机. 1.通过 USB 连接手机 ...

  5. BZOJ3282:Tree(TCL基础题)

    给定N个点以及每个点的权值,要你处理接下来的M个操作. 操作有4种.操作从0到3编号.点从1到N编号. 0:后接两个整数(x,y),代表询问从x到y的路径上的点的权值的xor和. 保证x到y是联通的. ...

  6. Cortex-M3 / M4 Hard Fault Handler (转载)

    转自大伟的,感谢大伟的帮助调试:http://www.cnblogs.com/shangdawei/archive/2013/04/30/3052491.html http://blog.frankv ...

  7. 关于netty的简单实现

    1. 新建两个maven项目, 分别为 netty-server: netty的服务端: 消息的消费者 netty-client: netty的客户端: 消息的生产者 2. 分别引入netty的mav ...

  8. asp.net 中的事务

    ASP.NET开发过程中的事务处理 http://www.cnblogs.com/georgeHeaven/p/3766609.html

  9. property_get 与 property_set 的返回值(转载)

    转自:http://wzw19191.blog.163.com/blog/static/13113547020103218265162/ /* property_get: returns the le ...

  10. 洛谷P3287 [SCOI2014]方伯伯的玉米田(树状数组)

    传送门 首先要发现,每一次选择拔高的区间都必须包含最右边的端点 为什么呢?因为如果拔高了一段区间,那么这段区间对于它的左边是更优的,对它的右边会更劣,所以我们每一次选的区间都得包含最右边的端点 我们枚 ...