关于删除这样的记录的sql怎么写!

[复制链接]
查看11 | 回复5 | 2006-4-17 13:46:34 | 显示全部楼层 |阅读模式
如 表 tb1
a_______b______c
001____0a______10
001____0a______-10
002____0b______6
003____0a______10
我要删除 字段a和b都一并且字段c正好是一正一负抵消的记录
结果:
a______b______c
002____0a_____6
003____0a_____10
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
说的清除点
字段a和b怎么的
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
delete tb1 where (a,b) in(select a,b from tb1 group by a,b having sum(c)=0)
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
如果是对账的话你的语句可能会对的,但是如果
a_______b______c
001____0a______10
001____0a______-5
001____0a______-5
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
确实有问题,那可以试试delete tb1 where rowid in(select a.rowid
from tb1 a,tb1 b where a.a=b.a and a.b=b.b and a.c=-b.c and a.c0)
回复

使用道具 举报

千问 | 2006-4-17 13:46:34 | 显示全部楼层
delete tb1 where (a,b) in(select a,b from tb1 where c0 group by a,b having sum(c)=0 and count(distinct c)=2)应该也可以
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行