请教如何控制在edit1中输入一个字符,就能查找出数据表中第一个字符符合输入字符的记录

请问怎么控制在edit1中输入一个字符,就能查找出数据表中第一个字符符合输入字符的记录?
请问怎么控制在edit1中输入一个字符,就能查找出数据表中某一字段记录第一个字符符合输入字符的记录?
我原来是这样写的:
ADOQuery1.SQL.Text:='select zhi from cr where leixing like ''%'
  +IfThen(RadioButton1.Checked, '', IfThen(RadioButton2.Checked, '国产', '进口'))+'%'' and zhi like ''%'+StringReplace(Edit1.Text, '''', '''''', [rfReplaceAll, rfIgnoreCase])+'%'' group by zhi order by zhi';
  ADOQuery1.Open;
  try
  while not ADOQuery1.Eof do
  begin
  ListBox1.Items.Add(VarToStr(ADOQuery1['zhi']));
  ADOQuery1.Next;
  end;
  finally
  ADOConnection1.Close;
  end;
这样,我在Edit1中输入A,在ListBox1中会显示所以包含有A的所有记录,比如:
123A
56A7899A
A12345
A5566
但我要的效果是在Edit1中输入A,在ListBox1中会显示所以包含以A开头的所有记录
A12345
A5566,其他的就不显示出来了,
请问在我原来的基础上要怎么修改好?谢谢


------解决方案--------------------
ADOQuery1.SQL.Text:='select zhi from cr where leixing like ''%'
+IfThen(RadioButton1.Checked, '', IfThen(RadioButton2.Checked, '国产', '进口'))+'%'' and zhi like ''%'+StringReplace(Edit1.Text, '''', '''''', [rfReplaceAll, rfIgnoreCase])+'%'' group by zhi order by zhi';

把红色部分去掉试试。
------解决方案--------------------
前面的百分号%不要就可以
------解决方案--------------------
探讨
ADOQuery1.SQL.Text:='select zhi from cr where leixing like ''%'
+IfThen(RadioButton1.Checked, '', IfThen(RadioButton2.Checked, '国产', '进口'))+'%'' and zhi like ''%'+StringReplace(Edit1.Text, '''', ''……

------解决方案--------------------
// 该方法适用数据量不是很大的情况
procedure TForm1.Edit1Change(Sender: TObject);
const s = ' select 查找字段1,查找字段2 from 表 where 比较字段 like ''%S%%'' ';
var vss:String;
begin
vss := StringReplace(edit1.text,'被替换内容','替换后内容');
vss := format(s,[vss]);
ADOQuery1.Close;
adoQuery1.sql.text := vss;
try
adoQuery1.open;
while not ADOQuery1.Eof do
begin
// ListBox1.add(adoquery1.fieldbyname('显示内容字段名').asstring;
ADOQuery1.Next;
end;
finally
ADOQuery1.Close;
ADOConnection1.Close;
end;
end;

------解决方案--------------------
ADOQuery1.SQL.Text:='select zhi from cr where leixing like ''%'
+IfThen(RadioButton1.Checked, '', IfThen(RadioButton2.Checked, '国产', '进口'))+'%'' 

去掉第一个%
------解决方案--------------------
前面的%不要,类似这样格式:
select * from t where (a like 'A%') or (b like 'A%') ...
------解决方案--------------------
like 后面 %A 表示 A结尾

A% 表示 A开头


%A% 表示有A就行