解决方案 »

  1.   

    什么数据库? Oracle的话直接写子查询:
    select * from table where class in (select class from table where id='s001')
      

  2.   

    如果数据库是oracle
    create table kc(
        xh varchar(50),
        kc varchar(50),
        fs number(5,1)
    )insert into sc values ('s001','c001',78.9);
    insert into sc values ('s002','c001',80.9);
    insert into sc values ('s003','c001',81.9);
    insert into sc values ('s004','c001',60.9);
    insert into sc values ('s001','c002',82.9);
    insert into sc values ('s002','c002',72.9);
    insert into sc values ('s003','c002',81.9);
    insert into sc values ('s001','c003',59);
    insert into sc values ('s002','c003',78.9);/* Formatted on 2014-8-18 16:57:09 (QP5 v5.185.11230.41888) */
    SELECT *
      FROM (  SELECT wm_concat (a.KC) AS newkc,a.xh
                FROM sc a
            GROUP BY xh)
     WHERE newkc = (SELECT wm_concat (b.KC)
                      FROM sc b
                     WHERE b.xh = 's001') and xh<>'s001'