假如一个表中有个字段中有123456、1234578、1234589、464412......记录。我现在只想截取出1234,显示到ComboBox中,而且只想显示一条。第二条记录中取出有相同的就不要显示了。

解决方案 »

  1.   

    select left(field1,4) as field1 from table goup by Left(Field1, 4)
      

  2.   

    select left(field1,4) as field1 from table group by Left(Field1, 4)
      

  3.   

    select distinct CONVERT(char(4), field) as field from table2 where CONVERT(char(4), field)='1234'
      

  4.   

    都可以
    方法有很多种
    用format也可以
      

  5.   

    select left(field1,4) as field1 from table group by Left(Field1, 4)
    好像有问题query1.open;的时候通不过??
      

  6.   

    那说明可能有空格字符在前面
    你用FORMAT吧
    var
    str:string;
    begin
    str:='';
    with query do begin
    close;
    sql.text:='select field1 from table';
    open;
    first;
    while not eof do begin
    if Pos(Copy(Trim(fieldbyname(field1).value),1,4),str)=0 then
    begin
    combox.item.add(Copy(Trim(fieldbyname(field1).value),1,4));
    end;
    next;
    end;
    end; 
    end;
      

  7.   

    这样查出的不符合要求啊,我表中有123456,123458,123469,456977,123420,456923。
    我查询后在在Combobox中只要显示一条1234。这样查后显示好多条,怎么样搞定那些重复的。
      

  8.   

    with Query do
      begin
        Close;
        SQL.Text:='select Left(Field1, 4) from table';
        Open;
        Combox.Items.Clear;
        while not Eof do
        begin
          if Combox.Items.IndexOf(Fields[0].AsString) = -1 then
            Combox.Items.Add(Fields[0].AsString);
          Next;
        end;
      end;
      

  9.   

    我用left(field,4)查出来的不只是一条,有N多相同的,而这并不是我想要的,我只想要其中的一条
      

  10.   

    with Query do
      begin
        Close;
        SQL.Text:='select Field1 from table';
        Open;
        Combox.Items.Clear;
        while not Eof do
        begin
          if Combox.Items.IndexOf(Copy(Fields[0].AsString, 0, 4)) = -1 then
            Combox.Items.Add(Copy(Fields[0].AsString, 0, 4));
          Next;
        end;
      end;
    Sql运行是绝对没有问题。
    数据库是Access吧。
    那就用上面的
      

  11.   

    我用的是Desktop,完了,
    这种错误。
    invalid use of keyword
    Token ,1,2)
    line number 1
    各位帮帮我吧。