select min(c1) as c1,c2,max(c3) as c2 
from t
group by c2

解决方案 »

  1.   

    如果原表格是这样的C1 C2 C3
    a b b
    b b c
    x x y
    z x x

    用你的方法简化出来是
    c1 C2 c2
    a b c
    x x y 目标是
    C1 C2 C3
    a  b  c
    x  y  z多谢了
      

  2.   

    这样呢???   结果是什么样
    C1C2C3
    abb
    bbc
    dbf   --新加的
    xxy
    zxx
      

  3.   

    重新写一遍,各位高手不要不管我啊
    C1 C2 C3
    a  b  b
    b  b  c
    x  x  y
    z  x  x结果
    a b c
    z x y在实践中是这样的, 左边   物品   右边
    a       b      b    物品右边是同种的
    b       b      c    物品左边是同种的
    x       x      y    物品左边是同种的
    z       x      x    物品右边是同种的现在就是要找到物品b ,x 两边的不同的物品存储在表中
    结果  a  b c 
          z  x y
      

  4.   

    像这样,怎么取???
    C1 C2 C3
    a  b  b
    b  b  c
    d  b  u    --新加
    x  x  y
    z  x  x
    b  x  i    --新加
      

  5.   

    高手,如果出现那样的情况就是
    a b c u
    z x y i
    会出现这样的情况
    a b b
    b b a 
    简化为 a b a 
      

  6.   

    写两个函数
    create function dbo.c_C1(@c2)
    returns varchar(1000)
    as
    begin
        declare @s varchar(1000)
        set @s=''
        select @s=@s+' '+c1 from t where c2=@c2 group by c1
        return @s
    end create function dbo.c_C3(@c2)
    returns varchar(1000)
    as
    begin
        declare @s varchar(1000)
        set @s=''
        select @s=@s+' '+c3 from t where c2=@c2 group by c3
        return @s
    end --查询
    select dbo.c_c1(c2),c2,dbo.c_c3(c2) 
    from t
    group by c2
      

  7.   

    --没测试,自己测   写两个函数
    create function dbo.c_C1(@c2)
    returns varchar(1000)
    as
    begin
        declare @s varchar(1000)
        set @s=''
        select @s=@s+' '+c1 from t where c2=@c2 and c1<>@c2 group by c1 --加一个条件
        return @s
    end create function dbo.c_C3(@c2)
    returns varchar(1000)
    as
    begin
        declare @s varchar(1000)
        set @s=''
        select @s=@s+' '+c3 from t where c2=@c2 and c3<>@c2 group by c3 --加一个条件
        return @s
    end --查询
    select dbo.c_c1(c2),c2,dbo.c_c3(c2) 
    from t
    group by c2
      

  8.   

    高手,程序运行结果是
     a b b  b c
     x z x  x y我能希望是
    a b c 
    z x y
      

  9.   

    create function dbo.c_C1(@c2)
    returns varchar(1000)
    as
    begin
        declare @s varchar(1000)
        set @s=''
        select @s=@s+' '+c1 from t where c1=@c2 group by c1
        return @s
    end create function dbo.c_C3(@c2)
    returns varchar(1000)
    as
    begin
        declare @s varchar(1000)
        set @s=''
        select @s=@s+' '+c3 from t where c3=@c2 group by c3
        return @s
    end --查询
    select dbo.c_c1(c2),c2,dbo.c_c3(c2) 
    from t
    group by c2
      

  10.   

    这个测试过了...你试试
    create function dbo.c_C1(@c2 varchar(10))
    returns varchar(1000)
    as
    begin
        declare @s varchar(1000)
        set @s=''
        select @s=@s+' '+c1 from 表名 where c2=@c2 and c1<>@c2 group by c1
        return @s
    end 
    go create function dbo.c_C3(@c2 varchar(10))
    returns varchar(1000)
    as
    begin
        declare @s varchar(1000)
        set @s=''
        select @s=@s+' '+c3 from 表名  where c2=@c2 and cgroup by c3
        return @s
    end select dbo.c_c1(c2),c2,dbo.c_c3(c2) 
    from tg
    group by c2