怎样进行此种filter?(100分)

  • 主题发起人 主题发起人 DancingAgain
  • 开始时间 开始时间
D

DancingAgain

Unregistered / Unconfirmed
GUEST, unregistred user!
一主表一明细表,(两个ttable:masterTbl, detailTbl)
主表的filter条件是若明细表中有符合某条件的记录时才显示主表记录。
我在MasterTbl的Onfilterrecord事件中判断DetailTbl中是否有符合条件的记录。
但此时的detailTbl并不和masterTbl对应。所以不能的出正确结果。
请问该怎末办?
 
主表用Query,条件复杂些也无碍
 
在这个主表中还要进行对主表的增加,删除,修改等。用Query会不会影响?
(还有些别的filter条件)
 
用table要简单一些,但query要灵活一些,而且效率高,因此,在
应用比较复杂使,使用query可能要好一些,可以自己控制条件。
只要把query的属性requestlive改为true,则可以修改,添加,删除
数据,但此时要注意query的属性包括所要操作表的所有关键字段,
非空字段。
 
to wgzhang:
我不熟悉SQl.是不是要用到in字句?能不能给我一个示例?
 
对于你所要实现的功能,可以用以下方法来实现:
假如主表为a(a1,a2,a3),从表为b(b1,b2,b3),要求从表的b1
字段和主表的a1字段相对应。那么,对应与主表的query所用的语句
可为:
select a1,a2,a3
from a
where a1 in
(select b1 from b)
下来,就是主从数据源的设置,相信你已经试过了。
 
具体是这样的:
主表是定购单,明细是订购单中每一项产品的数量,单价等.
现要选择对应明细表中有某一特定产品的主表记录.
请问该怎末写?
 
你可以把表结构描述以下吗?要不我还是只能写成上面的语句。
select *
from 订购单
where 产品编号 in
( select 产品编号 from ???)
你的明细表叫什么?是订购项目吗。
若还有问题,把详细表结构paste

 
mastertbl:1,PurchaseID,PurchaseDate....
detailtbl:1,PurchaseID,ItemID,PurPrice,PurSum,.....
需要对mastertbl filter.条件是:其对应的detailtbl记录中有Item=某值的记录.
谢谢!
 
select purchaseid,purchasedate,...
from mastertbl
where purchaseid in
(select purchaseid from detailtbl
where items=某值)

另外上面的表名后的1是什么意思?
 
再介绍一种方法:
select m.PurchaseID,m.PurchaseDate....
from mastertbl m,detailtbl n
where m.PurchaseID=n.PurchaseID
and n.Item=某值
 
wgzhang的方法会出现重复记录,应该再加一个dinstinct
 
to anzhiping:
谢谢!我采用了你的方法。
to wgzhang:
谢谢!虽然没有用你的方法,但我认为它也是对的。
 
后退
顶部