联合查询 类似于excel的自动筛选功能

LIQING99002 2004-05-10 01:34:12
一张表,有多个字段,每个字段对应一个条件,
需要定位到某一条记录时需要满足一个或多个条件
现利用多个DBLookupComboBox(每个字段对应一个)选择查询条件,进行联合查询
这一功能已经实现,但是在第一个条件的DBLookupComboBox选择了条件,进行了查询之后,要求其他的DBLookupComboBox中的条件选项是在第一次查询的结果中的,即进行二次查询


字段 a b c d
记录 1 7 4 3
1 7 4 5
3 5 4 3
1 2 3 4
当DBLookupComboBox_a=1时,dbgrid中有二条记录,在DBLookupComboBox_b中只出现7和2,若DBLookupComboBox_b选7,则DBLookupComboBox_c中只出现4,选4后DBLookupComboBox_d出现3和5,选择其中一个后可确定某条记录
类似于excel的自动筛选功能,用户可对任一个DBLookupComboBox先进行选择
请各位大侠指点小弟
...全文
181 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
LIQING99002 2004-05-10
  • 打赏
  • 举报
回复
可是用户不一定会遵从DBLookupComboBox_a,DBLookupComboBox_b的顺序,他可以随便以任意一个DBLookupComboBox开始查询,其他的DBLookupComboBox的内容是根据前面查询出来的数据集,再进行二次查询.
现在的问题是,如何判断用户会最先指定多个条件中第i个条件,然后其他的DBLookupComboBox在根据DBLookupComboBox_i查询出来的数据集,进行二次查询
请各位高手给个思路,或者是贴点能够代表该思路的源码,这个问题困扰我好多天了,真是急啊!
qizhanfeng 2004-05-10
  • 打赏
  • 举报
回复
DBLookupComboBox_a选择后过滤数据集
DBLookupComboBox_b的onEnter事件中重新指定过滤后的数据集,依次类推
fyje 2004-05-10
  • 打赏
  • 举报
回复
DBLookupComboBox_a选择后,在DBLookupComboBox_a的onchange或onexit事件中,或者DBLookupComboBox_b的onEnter事件中,对DBLookupComboBox_b相应的数据集进行筛选。依次类推
yyu423 2004-05-10
  • 打赏
  • 举报
回复
我看你好象是先通过a再通过b这样有顺查询.
那你把a的结果集去掉重复项添加到b中.把b的结果集去掉重复添加到c 中
以此类推嘛.

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧