关于Sql查询(100分)

  • 主题发起人 主题发起人 loday
  • 开始时间 开始时间
L

loday

Unregistered / Unconfirmed
GUEST, unregistred user!
我要做个日志报表,日志表(A)存储着许多物料主数据修改的日志,我需要 查找某一字段(安全库存字段)更改的情况(其他字段的更改不要出现在报表中)<br>code &nbsp; &nbsp; MaxLevel &nbsp;MinLevel &nbsp;Code2 &nbsp; .....<br>B0001 &nbsp; &nbsp; &nbsp; 100 &nbsp; &nbsp; &nbsp; 20 &nbsp; &nbsp; CCC<br>B0001 &nbsp; &nbsp; &nbsp; 200 &nbsp; &nbsp; &nbsp; 40 &nbsp; &nbsp; CCC<br>B0001 &nbsp; &nbsp; &nbsp; 300 &nbsp; &nbsp; &nbsp; 50 &nbsp; &nbsp; CCC<br>B0001 &nbsp; &nbsp; &nbsp; 300 &nbsp; &nbsp; &nbsp; 50 &nbsp; &nbsp; BBB<br>B0001 &nbsp; &nbsp; &nbsp; 500 &nbsp; &nbsp; &nbsp; 100 &nbsp; &nbsp;DDD<br>我所要的结果是<br>code &nbsp; &nbsp; MaxLevel &nbsp;MinLevel &nbsp;Code2 &nbsp; .....<br>B0001 &nbsp; &nbsp; &nbsp; 100 &nbsp; &nbsp; &nbsp; 20 &nbsp; &nbsp; CCC<br>B0001 &nbsp; &nbsp; &nbsp; 200 &nbsp; &nbsp; &nbsp; 40 &nbsp; &nbsp; CCC<br>B0001 &nbsp; &nbsp; &nbsp; 300 &nbsp; &nbsp; &nbsp; 50 &nbsp; &nbsp; CCC<br>B0001 &nbsp; &nbsp; &nbsp; 500 &nbsp; &nbsp; &nbsp; 100 &nbsp; &nbsp;DDD<br>我要抓的是当Maxlevel minLevel变化的数据,如果它们不变,其它字段变我不需要的
 
where &nbsp;Code2 = 'CCC'
 
to onyliu:<br>&nbsp;谢谢你的回复,可能我的意思你没明白,我重新该了一下,你再帮我看看吧。
 
是distinct???
 
只是这几个字段比较有难度,建议再加两个字段做为参照最好了,每次在修改表后,将前面的字段备份到后面去,再加上个修改时间来索引,加快查询速度。。。。
 
不知道你在说什么,要过滤数据首先要知道你有什么数据,要得到什么数据,通过什么样的过滤方式来得到目标数据,也就是你要说明你要根据什么字段来计算,比较<br><br>我感觉列的数据和你的说明没有任何关系。
 
以Maxlevel minLevel两列为唯一,去除重复记录?
 
对这两个字段建触发器
 
select a.code,b. MaxLevel,b.MinLevel,a.Code2 <br>from table1 a,<br>(select distinct MaxLevel,MinLevel from table1) b<br>where b. MaxLevel+b.MinLevel *=a.MaxLevel+a.MinLevel
 
后退
顶部