联机上都有得说的啊.SOME | ANY
用标量值与单列集中的值进行比较。 语法
scalar_expression { = | < > | != | > | > = | ! > | < | < = | ! < } 
    { SOME | ANY } ( subquery ) 参数
scalar_expression是任何有效的 Microsoft&reg; SQL Server&#8482; 表达式。{ = | <> | != | > | >= | !> | < | <= | !< }是任何有效的比较运算符。 SOME | ANY指定应进行比较。subquery是包含某列结果集的子查询。所返回列的数据类型必须是与 scalar_expression 相同的数据类型。结果类型
Boolean结果值
对于 ANY 对 (scalar_expression, x)(其中 x 是单列集中的值),当指定的比较是 TRUE时,SOME 或 ANY 返回 TRUE。否则返回 FALSE。ALL
用标量值与单列集中的值进行比较。 语法
scalar_expression { = | <> | != | > | >= | !>| < | <= | !< } ALL ( subquery )参数
scalar_expression是任何有效的 Microsoft&reg; SQL Server&#8482; 表达式。{ = | <> | != | > | >= | !> | < | <= | !< }是比较运算符。subquery是返回单列结果集的子查询。返回列的数据类型必须与 scalar_expression 的数据类型相同。是受限的 SELECT 语句(不允许使用 ORDER BY 子句、COMPUTE 子句和 INTO 关键字)。返回类型
Boolean结果值
如果所有给定的比较对(scalar_expression, x)均为 TRUE,其中 x 是单列集中的值,则返回 TRUE;否则返回 FALSE。

解决方案 »

  1.   

    SELECT 从句中,可以指定ALL 或者DISTINCTALL 表示选择结果集合的所有行.SELECT 默认的选项就是ALL 的.
      

  2.   

    在逻辑运算符中:ALL 只有当一组比较关系的值都为TRUE时,才返回TRUE;
    ANY 只要一组比较关系中有一个值为TRUE时,就返回TRUE;
      

  3.   

    好还有个compute的问题,一解决,立马给分,烦请各位大虾费点心.
      

  4.   

    create table tb1(id int identity(1,1),a varchar(20),b varchar(20),c varchar(20),d varchar(20),e varchar(20),)
    go
    insert tb1(a,b,c,d,e)
    select 'a','b','c','d','e'
    union all select 'a','b','c','f','g'
    union all select 'a','b','c','h','i'
    union all select 'a','b','d','j','k'
    union all select 'a','b','d','l','m'select * from tb1 compute count(a)
      

  5.   

    all: 
     select * from t where x<any(select Y from t2)
      那么这里的x<any指的是对于一些Y,x比Y要小
    any:
     select * from t where x<all(select Y from t2)
     那么这里的x<all指的是对于所有的Y,x都比Y要小
    compute:
     汇总,和group by 不同的是她把结果放在底部
      

  6.   

    --或者这样吧.create table tb1(id int identity(1,1),a varchar(20),b varchar(20),c varchar(20),d varchar(20),e varchar(20),)
    go
    insert tb1(a,b,c,d,e)
    select 'a','b','c','d','e'
    union all select 'a','b','c','f','g'
    union all select 'a','b','c','h','i'
    union all select 'a','b','d','j','k'
    union all select 'a','b','d','l','m'select * from tb1 
    union all 
    select 0,'记录数','','','',cast(count(a) as varchar(20)) from tb1