表1:  corpcomment_list   字段corpid,dateline表2:corp_list   字段corpid,switch现在是要取 corpcomment_list表中以corpid不重复的,并且表2的字段switch=2,按dateline降序排列.请问这个sql查询,应该怎样写...请帮写一下.

解决方案 »

  1.   

    select  *
    from corpcomment_list
    where corpid not in (select corpid from corp_list where switch=2)
    order by dateline desc
      

  2.   

    SELECT DISTINCT * 
    FROM `corpcomment_list`, `corp_list`
    WHERE `corpcomment_list`.`corpid` = `corp_list`.`corpid` AND `switch` = 2
    ORDER BY `dateline` DESC
      

  3.   


    现在是要取 corpcomment_list表中以corpid不重复的 
    这句是什么意思?是所有的数据都用,只是每个取一条吗?还是说数据在该表中不发生重复,即在该表中仅有一条数据的那些数据?
    最好的描述就是给出数据,给出结果。根据不同的理解,测试如下语句,我这没环境,不保证正确及没有语法错误:
    select * 
    from 
        corpcomment_list as t1
            left join
        corp_list as t2
            on t1.corpid = t2.corpid
    where t2.switch = 2
    group by corpid
    order by dateline descselect *
    from 
        corpcomment_list as t1
        left join
        corp_list as t2
        on t1.corpid = t2.corpid        
    where
        corpid in
        (
            select 
                corpid
            from 
                corpcomment_list
            group by 
                corpid
            having
                count(corpid) = 1
        )
        and switch = 2
    order by dataline desc
        
      

  4.   

    select distinct a.corpid,a.dateline
    from corpcomment_list a ,corp_list b 
    where a.corpid=b.corpid
    and b.switch=2
    order by a.dateline desc