ID   name   type  check
1    小刘     1     0
2    大李     1     0
3    小刘     1     0
4    小刘     1     0
我想搜出type=1和check=0的数据,重复的数据只显示一条
搜索结果为:
ID   name   type
1    小刘     1
2    大李     1求SQL语句

解决方案 »

  1.   

    SELECT * FROM TB T WHERE NOT EXISTS(SELECT 1 FROM TB WHERE NAME=T.NAME AND ID<T.ID)
      

  2.   

    SELECT * FROM TB T WHERE
     NOT EXISTS(SELECT 1 FROM TB WHERE NAME=T.NAME AND type=1 AND check=0 AND  ID<T.ID)
      

  3.   

    關鍵字CHECK
    加[]
    [CHECK]
      

  4.   

    select distinct id,name,typefrom tb where type=1 and [check]=0  group by id,name,type
      

  5.   

    select distinct id,name,typefrom tb where type=1 and [check]=0  group by id,name,type
      

  6.   

    SELECT * FROM TB T WHERE
     NOT EXISTS(SELECT 1 FROM TB WHERE NAME=T.NAME AND type=1 AND [check]=0 AND  ID<T.ID)
      

  7.   

    SELECT * FROM TB T WHERE
     NOT EXISTS(SELECT 1 FROM TB WHERE NAME=T.NAME AND type=1 AND check=0 AND  ID<T.ID)借用峰哥的代码
    混点分
      

  8.   

    谢谢,条件是不是应该这样并行呀?
    SELECT * FROM TB T WHERE NOT EXISTS(SELECT 1 FROM TB WHERE NAME=T.NAME AND ID <T.ID) and checked=0 and sortid=@sortid
      

  9.   

    SELECT * 
    FROM TB A INNER JOIN
    (
       SELECT MIN(ID),NAME FROM TB GROUP BY NAME
    ) B ON A.ID = B.ID AND A.NAME = B.NAME
      

  10.   


    SELECT * 
    FROM TB A INNER JOIN
    (
       SELECT MIN(ID),NAME FROM TB WHERE TYPE = 1 AND CHECK = 0 GROUP BY NAME
    ) B ON A.ID = B.ID AND A.NAME = B.NAME