在线求助!查询的一个简单问题!

qdsinacocoli 2004-08-11 09:11:21
我现在用delphi7.0编写一查询程序,目的是要在所有的选项中取出相同的,并将相同的显示一条,
例如:选项中有记录:
部门 姓名
(1)信息通讯中心 小王
(2)财务部 小李
(3)发电一部 李军
(4)信息通讯中心 小康.....
现在我想按部门查询是将部门中的信息添入下拉框中并且在下拉框中只显示一个“信息通讯中心”(相同的只显示一个)。即(按部门查询):
信息通讯中心
财务部
发电一部
然后在下拉框中选择“信息通讯中心” 就回显示两条记录。
...全文
83 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
qdmiscocoli 2004-08-11
  • 打赏
  • 举报
回复
with ADOQuery1 do
begin
close;
SQL.clear;
SQL.add('select distinct 部门 from tablename');//关键查询语句
OPen;
ComboBox1.Clear;
While not EOF do
begin
ComboBox1.Items.Add(FieldByName('部门').AsString);



select * from tablename where 部门 = '''+trim(ComboBox1.text)+'''

Next;
end;
end;
kencharles 2004-08-11
  • 打赏
  • 举报
回复
可不可以在ComBoBox的Items.Add事件前加一个判断语句呀?判断Items存在就不加入值,否则!这样子可以吗?
hevin 2004-08-11
  • 打赏
  • 举报
回复
那要看你在哪里添加那段代码了
qdsinacocoli 2004-08-11
  • 打赏
  • 举报
回复
上面的兄台说的我想是真确的啊!但是运行的时候在库里添加一个相同部门的不同人员就在下拉框中添加了一个部门啊!怎么会事啊
hevin 2004-08-11
  • 打赏
  • 举报
回复
首选用adoquery查出部门,并把它加入到combobox中去
adoquery1.sql.add(' select distinct 部门 from tabName');
adoquery1.open;
adoquery1.first;
while not adoquery1.eof do
begin
combobox.items.add(adoquery1.fieldbyname('部门').asstring;
adoquery1.next;
end;

再在combobox的onchange事件中将combobox中对应部门的记录查询出来,

insert2003 2004-08-11
  • 打赏
  • 举报
回复
然后在下拉框中选择“信息通讯中心” 就回显示两条记录。
==================================
select * from tablename where 部门 = '''+trim(ComboBox1.text)+'''
nhdj 2004-08-11
  • 打赏
  • 举报
回复
select distinct 部门 from table
insert2003 2004-08-11
  • 打赏
  • 举报
回复
查询语句

with ADOQuery1 do
begin
close;
SQL.clear;
SQL.add('select distinct 部门 from tablename');//关键查询语句
OPen;
ComboBox1.Clear;
While not EOF do
begin
ComboBox1.Items.Add(FieldByName('部门').AsString);
Next;
end;
end;

kaguo 2004-08-11
  • 打赏
  • 举报
回复
'Select * from Table where 部门='''+Combobox1.text+''' '

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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