某字段,未知字段的值,统计不同的值的个数.
如:A字段,总共有若干条纪录,当中有值为1-1-1,1-1-2,1-2-1, 1-2-2,1-2-3……,统计出值为‘1-1’,‘1-2’……开始的各有多少条纪录。

解决方案 »

  1.   

    试一下:select count(left(字段名, 3)) as scount from tblname group by left(字段名, 3)
      

  2.   

    select Count(*)  from table
    group by  substring(field, 1, 3)
      

  3.   

    看不大懂哦!写在TQUERY的SQL里?那怎么显示出来啊?
      

  4.   

    QUERY1.close
    QUERY1.sql.clear;
    QUERY1.sql.add('select Count(*) as cnt from table group by  substring(field, 1, 3)');
    QUERY1.open;
    showMessage(QUERY1.FieldByName('cnt').asstring);
      

  5.   

    我只知道当中字段的值有类似的规律,并不知道是以什么开头的.当中又分为好几组.如值是单词,查以'AA'为开头的有几个(N个),以'ZZ'开头的又有几个(N1个).'AA','ZZ'是未知的,是自己查询出来的.唯一知道的是前两个字是相同的.有若干组.
        显示:AA  有  N
             ZZ  有  N1
                  .
                  .
                  .
    阿飞:像你这样显示出来只有一个数字,是什么的值?组数?还是某一组的纪录数?
      

  6.   

    select left(itext,2) as Header, count(*) as number from t
    group by left(itext,2)
      

  7.   

    这样返回的不是只有2个值吗?header,number.各指什么啊?
      

  8.   

    你用一个dbgrid 连一下TQuery 就可以看到了
      

  9.   

    可以
      adoquery1.Close;
      adoquery1.SQL.Clear;
      adoquery1.SQL.Add('select distinct 字段名 from 表 ');
      adoquery1.ExecSQL;
      adoquery1.Open;
    然后可以依次取出不同的字段值,在按值查询记录条数.
      

  10.   

    select left(LTRIM(字段名), 3) ,count(left(LTRIM(字段名), 3)) as scount from tblname group by left(LTRIM(字段名), 3)