SQL查询语句对比两个表

wxg600308 2010-08-19 03:35:36
一个发票发售表:
日期 对方仓库 发票代码 发票名称 起始号码
1 aa 0011 平推 40029701
2 aa 0022 定额 40032401
3 bb 0011 平推 40039601
4 bb 0022 定额 40032601
5 cc 0011 平推 40039602
6 cc 0022 定额 40032603
7 cc 0023 平推 40032603
...............

一个发票缴销表:
日期 对方仓库 发票代码 发票名称 起始号码
12 aa 0022 定额 40032401
12 bb 0011 平推 40039601
13 aa 0011 平推 40029701
13 bb 0033 定额 40032601
14 cc 0011 平推 40039602
15 cc 0022 定额 40032603
...............
把发票发售与发票缴销对比,查出发票发售记录在发票缴销表中不存在的数据。
相同记录是指"发票代码","发票名称", "起始号码"都相同,不考类日期和对方仓库
...全文
262 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wxg600308 2010-08-22
  • 打赏
  • 举报
回复
ok 谢谢!
gzpydc 2010-08-21
  • 打赏
  • 举报
回复
#2 正解
ACMAIN_CHM 2010-08-21
  • 打赏
  • 举报
回复
[Quote]#2,代码运行不动,不知为什么?发票发售表4万条记录,发票缴销表4千多条记录
[/Quote]

那就改成用LEFT JOIN 。。。WHERE 。。IS NULL
wxg600308 2010-08-21
  • 打赏
  • 举报
回复
#2,代码运行不动,不知为什么?发票发售表4万条记录,发票缴销表4千多条记录
ACMAIN_CHM 2010-08-19
  • 打赏
  • 举报
回复
select *
from 发票发售表 a
where not exists(
select 1 from 发票缴销表
where 发票代码=a.发票代码
and 发票名称=a.发票名称
and 起始号码=a.起始号码
)
thoughter 2010-08-19
  • 打赏
  • 举报
回复
SELECT F.日期,F.对方仓库,F.发票代码,F.发票名称,F.起始号码
FROM 发票发售表 AS F LEFT JOIN 发票缴销表 AS J ON F.发票代码=J.发票代码 AND F.发票名称=J.发票名称 AND F.起始号码=J.起始号码
WHERE ISNULL(J.发票代码)

这样?

5,139

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 Office开发/ VBA
社区管理员
  • Office开发/ VBA社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧