关于"冲红"数据,请高手指教
TAZS 
 TAZS	2030.12	接头2030.12   PZ	SET	CIN-06-0055	来料验收入库	增	2006-12-22   13:03:24.000	80.00	.00	TAZS 
 TAZS	2030.12	接头2030.12   PZ	SET	CIN-06-0103	来料验收入库	增	2006-12-22   13:03:50.000	12.00	.00	TAZS 
 TAZS	7866-03	针织7866-03	PCS	CIN-06-0001	来料验收入库	增	2006-11-08   15:44:01.000	11472.00	.00	TAZS 
 TAZS	7866-03		PCS	OU060012	其他出库单	减	2006-10-27   18:56:15.000	.00	11472.00	TAZS 
 TAZS	7866-03	针织   7866-03	PCS	CIN-06-0001	来料验收入库	减	2006-11-11   14:19:21.000	.00	11472.00
------解决方案--------------------你的进销存表没有主键吗?你的第一条记录和第四条记录完全一样. 
 因为你没有主键只能这样查: 
 select distinct A.WareHId,A.Itemid,A.inQty,A.outQty,B.inQty,B.outQty,A.Billid,A.Iostyle,A.comm from inviolog A inner join inviolog B on  
 A.corpcode=B.corpcode and A.warehid=B.WareHid and A.Itemid=B.Itemid 
 and charindex(A.iostyle,B.iostyle)> 0 and a.inqty=b.Outqty and A.billid=B.Billid and ((A.ioflag= '增 ' and B.ioflag= '减 ') or (A.ioflag= '减 ' and B.ioflag= '增 ')) 
 这样查出来的应该是需要冲红的记录. 
 如果有主键就好办了. 
------解决方案--------------------设置个联合主键不行吗
------解决方案--------------------LZ,你把表结构贴出来啊   
 光看你的SELECT语句太抽象了 
------解决方案--------------------建立扩展你的表结构吧,将红冲和被红冲记录做一个标记flag,查询不就好办了
------解决方案--------------------SELECT * 
 FROM table1 a 
 WHERE NOT EXISTS  
 	(SELECT 1 
 	FROM table1 b 
 	WHERE b.单据编号=a.单据编号 
 	AND b.单据类别= 
 		CASE a.单据类别  
 		WHEN  '来料验收入库 ' THEN  '来料验收入库(反审核) ' 
 		WHEN  '其他出库单 ' THEN  '其他出库单(反审核) ' 
 		END  
 	AND b.出入标志= 
 		CASE a.出入标志 
 		WHEN  '增 ' THEN  '减 ' 
 		WHEN  '减 ' THEN  '增 ' 
 		END  
 	AND b.入库数=a.出库数 
 	AND b.出库数=a.入库数)