我想得到一个字段中有多少个不重复的值,也就是 select count (distinct a) from b;
我用ACCESS做数据库,运行时会提示:distinct未定义。请问用什么办法可以解决/??另select a_ply as 比例 from a这里我想要比例后面跟一个%,可是直接写select a_ply as 比例% from a,会出错。不知道用什么办法?先谢了。

解决方案 »

  1.   

    select count (a) from 
    (select distinct(a) from b)
      

  2.   

    select a_ply as [比例%] from a
      

  3.   

    第一個問題:我用sql server Query Analyzer 上試,可以用...
    第二個問題:select a_ply as [比例%] from a
      

  4.   

    --
    select count(*) 
    from
      ( select myField 
        from myTable
        group by myField
      )
    --
    select myStringNum +'%' as myNewName
    from myTable
      

  5.   

    select count(*) from  (select distict a from b) b
      

  6.   

    现在是这样的,我需要查询 a 中 共 有 多 少 条 记 录,有多少个不同的b-id,a-ply总和,很多项,最后还分组
    select count(a_id),count(distinct b_id),sum(a_ply) from a group by a_times;
    不知道该怎么办。。谢谢各位了
      

  7.   

    count(a_id),count(distinct b_id),这两个是不能同时分组的!!
      

  8.   

    查了半天,基本上可以确定是access的问题了。
    Access用的SQL是Jet SQL,SQL Server用的是T SQL
    但是我的问题该怎么解决?
      

  9.   

    access也是可以的,第一个问题用jinjazz的方法,第二个问题我同意gold_future(金色未来)的做法表给我分:-D
      

  10.   

    不好意思,没看到楼主后来的发言,count(distinct b_id)这样的写法access不支持的,我也不知道有什么好办法了
      

  11.   

    select 
           count((select distict a_id from b)),
           count((select distict b_id from b)),
           sum(a_ply)
              from  from a group by a_times;
      

  12.   

    这样可以得到值,但是分组又碰到困难。
    select a.a,c.c from 
    (select count(b.b) as a from (select distinct b_id as b from a)b)a,
    (select count a_id as c from a)c
      

  13.   

    select a.a,c.c from 
    (select count(b.b) as a from (select distinct b_id as b from a)b)a,
    (select count a_id as c from a) c
       group by a.a,c.c
      

  14.   

    access的sql语句支持很小的,而且如果用也的看看格式,我用的时候好多他和sql2000不一样!