create table buyer as
SELECT b.id AS bankid
FROM v_product_deal_main m, base_member b
WHERE b.id = m.BUYERID
AND m.DEALDATE <= to_date('', 'yyyymmdd')
AND m.STATE = 9
AND b.state = 0;
---441947
--seller方
 create table seller as SELECT * FROM seller ;
create table seller as
SELECT b.id AS bankid
FROM v_product_deal_main m, base_member b
WHERE b.id = m.sellerid
AND m.DEALDATE <= to_date('', 'yyyymmdd')
AND m.STATE = 9
AND b.state = 0; create TABLE ttt as
SELECT aa,bankid
FROM (SELECT 1 aa,
m.BUYERID AS bankid
FROM v_product_deal_main m, base_member b
WHERE b.id = m.BUYERID
AND m.DEALDATE <= to_date('', 'yyyymmdd')
AND m.STATE = 9
AND b.state = 0
UNION ALL
SELECT 2 AS aa,
m.sellerID AS bankid
FROM v_product_deal_main m, base_member b
WHERE b.id = m.sellerid
AND m.DEALDATE <= to_date('', 'yyyymmdd')
AND m.STATE = 9
AND b.state = 0);
--从下面可以看到 seller 表中的行数+ buyer 表中的行数 < ttt表中的行数 ;
SELECT COUNT(1) FROM seller ; --
SELECT COUNT(1) FROM buyer ; --
SELECT COUNT(1) FROM ttt ; ---883894
-- bankid=1 在buyer表中出现的次数 15191 + (seller表中出现的次数)11457= (ttt 表中出现的次数)30382 ;(seller + buyer)= 26648
--4378 +5859 =8756 10237 --bankid =2 出现的次数
SELECT 4378 +5859 FROM dual ;
SELECT b.bankid ,COUNT(b.bankid) FROM buyer b GROUP BY b.bankid ORDER BY b.bankid ;
SELECT s.bankid ,COUNT(s.bankid) FROM seller s GROUP BY s.bankid ORDER BY s.bankid ;
SELECT t.bankid ,COUNT(t.bankid) FROM ttt t GROUP BY t.bankid ORDER BY t.bankid SELECT SUM(DECODE(t.aa ,1 ,bankid,0 )) buyer ,
SUM( DECODE(t.aa ,2 ,bankid,0 )) seller
FROM ttt t ; SELECT SUM(DECODE(t.aa ,1 ,1,0 )) buyer ,
SUM( DECODE(t.aa ,2 ,1,0 )) seller
FROM ttt t ; --
SELECT bankid, count(1) from ttt
where aa=2
MINUS
--
Select bankid ,Count(1) From seller ; SELECT bankid from ttt
where aa=2
MINUS
--
Select bankid From seller ;
SELECT COUNT(1) from ttt -------------------------------
--1765 --441947
select bankid,count(1) from ttt
where aa=2
group by bankid
order by bankid ; --1465 --441945
Select bankid,Count(1) From seller
group by bankid
order by bankid
; SELECT t.bankid FROM ttt t WHERE t.aa =1 SELECT t.bankid FROM ttt t WHERE t.aa =2 SELECT SUM(NVL(BUYERID, 0) + NVL(SELLERID, 0))
FROM (SELECT (SELECT 1
FROM BASE_MEMBER B
WHERE B.ID = M.BUYERID
AND B.STATE = 0) AS BUYERID,
(SELECT 1
FROM BASE_MEMBER B
WHERE B.ID = M.SELLERID
AND B.STATE = 0) AS SELLERID
FROM V_PRODUCT_DEAL_MAIN M
WHERE M.DEALDATE <= TO_DATE('', 'yyyymmdd')
AND M.STATE = 9)

1.遗留问题 怎么找到 相差的呐俩条数据  ?

2. 问题到底出在哪里 ?

使用union all 遇到的问题(俩条sql语句行数的和 不等于union all 后的 行数的和 !);遗留问题 怎么找到 相差的呐俩条数据 ?的更多相关文章

  1. 一条SQL语句执行得很慢原因有哪些

    一条SQL语句执行得很慢,要分两种情况: 1.大多数情况是正常,偶尔很慢 数据库在处理数据忙时候,更新或新增数据都会暂时记录到redo log日志,等空闲时把数据同步到磁盘.假设数据库一直很忙,更新又 ...

  2. 一条SQL语句求全年平均值

    一年有8760个小时!(才这么点...) 有个气候表,存储了当地从1到8760小时的温度数据.现在,要求全年的温度每天平均值. CREATE TABLE #Climate(h INT ,t DECIM ...

  3. MyBatis7:MyBatis插件及示例----打印每条SQL语句及其执行时间

    Plugins 摘一段来自MyBatis官方文档的文字. MyBatis允许你在某一点拦截已映射语句执行的调用.默认情况下,MyBatis允许使用插件来拦截方法调用 Executor(update.q ...

  4. MyBatis插件及示例----打印每条SQL语句及其执行时间

    Plugins 摘一段来自MyBatis官方文档的文字. MyBatis允许你在某一点拦截已映射语句执行的调用.默认情况下,MyBatis允许使用插件来拦截方法调用 Executor(update.q ...

  5. SQL反模式学习笔记18 减少SQL查询数据,避免使用一条SQL语句解决复杂问题

    目标:减少SQL查询数据,避免使用一条SQL语句解决复杂问题 反模式:视图使用一步操作,单个SQL语句解决复杂问题 使用一个查询来获得所有结果的最常见后果就是产生了一个笛卡尔积.导致查询性能降低. 如 ...

  6. Mysql 一条SQL语句实现批量更新数据,update结合case、when和then的使用案例

    如何用一条sql语句实现批量更新?mysql并没有提供直接的方法来实现批量更新,但是可以用点小技巧来实现. 复制代码 代码如下: UPDATE mytable SET myfield = CASE i ...

  7. 一条Sql语句分组排序并且限制显示的数据条数

    如果我想得到这样一个结果集:分组排序,并且每组限定记录集的数量,用一条SQL语句能办到吗? 比如说,我想找出学生期末考试中,每科的前3名,并按成绩排序,只用一条SQL语句,该怎么写? 表[TScore ...

  8. C#实现执行多条SQl语句,实现数据库事务

    C#实现执行多条SQl语句,实现数据库事务 在数据库中使用事务的好处,相信大家都有听过银行存款的交易作为事务的一个例子.事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的 ...

  9. Spring 中jdbcTemplate 实现执行多条sql语句

    说一下Spring框架中使用jdbcTemplate实现多条sql语句的执行: 很多情况下我们需要处理一件事情的时候需要对多个表执行多个sql语句,比如淘宝下单时,我们确认付款时要对自己银行账户的表里 ...

随机推荐

  1. python自动化学习

    1.环境搭建 1.1 下载或拷贝整个PyAuthoTest到指定的目录,如D:\PyAuthoTest 1.2 安装Python2.7以及需要使用到的安装包列表如下 requests-2.10.0.t ...

  2. 执行Go程序的三种方式及Go语言关键字

    执行 Go 程序的三种方式及 Go 语言关键字 执行 Go 程序的三种方式 一.使用 go run 命令 二.使用 go build 命令 Step1. 对 go 源码源文件执行 go build 命 ...

  3. postgres-xl 安装与部署 【异常处理】ERROR: could not open file (null)/STDIN_***_0 for write, No such file or directory

    https://www.jianshu.com/p/82aaf352b772 这篇文章很不错,里面有个bug,可能是版本不对. 当前(2018-04-11)通过git 下载原代码时,在配置  pgxc ...

  4. go-处理字符串导致内存溢出

    今日用go来做字符的“+”连接操作,每次连接的字符串大致有10M左右,循环连接100次,直接导致go内存溢出了. // Text project main.go package main import ...

  5. HDFS要点

    namenode存储的数据: 主控服务器主要有三类数据:文件系统的目录结构数据,各个文件的分块信息,数据块的位置信息(就数据块放置在哪些数据服务器上...).在GFS和HDFS的架构中,只有文件的目录 ...

  6. 20170531 课堂实践 MyOD

    MyOD 题目 编写MyOD.java 用java MyOD XXX实现Linux下od -tx -tc XXX的功能 Linux下od功能详解 od(octal dump)命令可以以八进制.十进制. ...

  7. 20155216 2016-2017-2 《Java程序设计》第四周学习总结

    教材学习内容总结 理解封装.继承.多态的关系 封装:使用类方法或函数将程序进行封装,并定义其内部的成员以及数据. 继承:子类继承父类,避免重复的行为定义. 多态:子类只能继承一个父类,即其中存在is- ...

  8. hadoop 、hive 的一些使用经验。

    1.queue的设置 hadoop2.0支持了queue,在hadoop程序里面进行queue的配置: job.getConfiguration().set("mapred.job.queu ...

  9. 如何运用 Powershell 修改Office365和AD账户

    这段时间需要大量地修改AD用户的一些属性,例如邮件,UPN,登录名等等,以便和Office365的登录账号保持一致.写了个简单脚本进行批量修改. #Import AD ModuleImport-Mod ...

  10. 解决Sublime Text 3中文显示乱码(tab中文方块)问题

    博客分类:  Sublime   一.文本出现中文乱码问题 1.打开Sublime Text 3,按Ctrl+-打开控制行,复制粘贴以下python代码,然后回车运行. 2. 复制并粘贴如下代码: P ...