DELPHI盒子
!
实时搜索:
标题
作者
盒子论坛
|
注册用户
|
修改信息
|
退出
检举帖
|
全文检索
|
关闭广告
|
捐赠
技术论坛
用户名
密 码
自动登陆(30天有效)
忘了密码
≡技术区≡
①
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
②
发布代码
发布控件
文档资料
经典工具
≡事务区≡
③
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入:
wugangbest
今日帖子:
26
在线用户:
20
导航:
论坛
->
数据库专区
斑竹:liumazi,waterstone
作者:
beginer
(初学者)
★☆☆☆☆
-
盒子活跃会员
2016/11/19 19:24:29
标题:
请教一个对账的sql语句
浏览:
1646
加入我的收藏
楼主:
想做一个类似财务对账的程序,一边显示本地数据,一边显示对账单数据,两个表a,b字段结构相同,例如:id,file,code,money,flag,(id号,文号,科目编码,金额,对账标志),现在使用如下的sql语句:
update a,b
set a.flag=true,b.flag=true
where (a.file=b.file) and (a.code=b.code) and (a.money=b.money)
即:把a,b两个表中文号、科目编码,金额完全相等的记录对账标志打上勾
现在发现一个问题解决不了:假如本地数据或对账单中同一条记录有重复的,程序会一并勾上,这样对上的数据金额合计就不相等了。如图
想达到的目标是如果有重复的,勾对程序只勾其中一条就行了,重复的不勾。即图中a表中55或56号记录,只勾选其中一条即可。重复的忽略掉
请教该怎样设计sql语句,或者在现在对出来的基础上取消掉重复的勾选也行
此帖子包含附件:
大小:
39.8K
----------------------------------------------
新手,想得到您的帮助!
作者:
caoweizhong123
(青秋)
★☆☆☆☆
-
盒子活跃会员
2016/11/20 18:12:32
1楼:
想办法将记录弄不同。
----------------------------------------------
学习拉!
作者:
beginer
(初学者)
★☆☆☆☆
-
盒子活跃会员
2016/11/20 21:04:24
2楼:
有没有熟悉SQL的啊
----------------------------------------------
新手,想得到您的帮助!
作者:
kenliaoliao
(ben)
★☆☆☆☆
-
普通会员
2016/11/21 7:58:16
3楼:
你的flag不要用Bool类型,用数字类型
将flag都等于0
用游标将重复的记录打上一个-1的标记,如a表 56 a01 110 8000 -1
再在flag=0 的数据里做更新
----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2
C
C
C
.Com
盒子论坛
v3.0.1 版权所有 页面执行74.21875毫秒