原代码如下:
with ADODataSet1 do
begin
  Active := False;
  CommandText := 'select * from UserInfo where CompanyName like ''6765%%''';
  Active := True;
end;查询出来数据为
CompanyName                                                                                          
-----------
6765%
6765%%
6765但是我只想查询6765%这一条记录。

解决方案 »

  1.   

    CommandText := 'select * from UserInfo where CompanyName like ''6765%'%''
      

  2.   

    CommandText := 'select * from UserInfo where CompanyName =  6765%';
      

  3.   

    with ADODataSet1 do
      begin
        Active := False;
        CommandText := 'select CompanyName from UserInfo where CompanyName like ''6765#%%'' escape ''#''';
        Active := True;
      end;
      

  4.   

    kao,大哥,干吗你非得包含%在字符串里面呢?with ADODataSet1 do
      begin
        Active := False;
        CommandText := 'select CompanyName from UserInfo where CompanyName 
                        like '6765[%]%';
        Active := True;
      end;
      

  5.   

    with ADODataSet1 do
    begin
      Active := False;
      CommandText := 'select * from UserInfo where CompanyName =  6765%';
      Active := True;
    end;
      

  6.   

    hehe,一次性搞定好像不容易,不如用CommandText := 'select CompanyName from UserInfo where CompanyName like '6765%'';查出来以后再过滤;
      

  7.   

    with ADODataSet1 do
    begin
      Active := False;
      CommandText := 'select CompanyName from UserInfo where CompanyName 
                      like '6765[%]%';
      //或者
      CommandText := 'select CompanyName from UserInfo where CompanyName 
                      like '6765_%';  //_单字符匹配
      Active := True;
    end;
      

  8.   

    这样可以:select * from UserInfo where 
    CHARINDEX('6765%',CompanyName )=1
      

  9.   

    我列出三种可行的方法:
       CommandText := 'select CompanyName from UserInfo where CompanyName like ''6765#%%'' escape ''#''';   CommandText := 'select CompanyName from UserInfo where CompanyName like ''6765[%]%''';    CommandText := 'select CompanyName from UserInfo where CompanyName like ''6765_%''';结贴!!!