我现在有个表:movie 字段有:id,name,addr...等等 ,我想查询不重复的以name为条件,比如 "abcd"  所有字段的信息,有很多name相同的信息,我只要输出一条,,高手帮忙看看,,感谢,加分.

解决方案 »

  1.   

    select * from movie where name='abcd'?
      

  2.   


    id 唯一的话select * from tb t
    where not exists(select * from tb where name=t.name and id>t.id)
    and name=''
      

  3.   

    SELECT * FROM movie M WHERE NOT EXISTS(SELECT 1 FROM movie WHERE NAME=M.NAME AND ID>M.ID)
      

  4.   

    select * from tb where name  in(select name from tb group by name having count(1)=1)
      

  5.   

    SELECT * FROM movie M WHERE NOT EXISTS(SELECT 1 FROM movie WHERE NAME=M.NAME AND ID<M.ID) AND M.NAME=......这是小的
      

  6.   

    select name,max(id),max(addr) from movie 
    group by name
      

  7.   

    select 
      * 
    from 
      movie t
    where 
      not exists(select 1 from movie where name=t.name and id>t.id)
      

  8.   

    http://topic.csdn.net/u/20080626/00/43d0d10c-28f1-418d-a05b-663880da278a.html?85256
      

  9.   

    select name,max(id),max(addr) from movie 
    where name='abcd' 
    group by name
      

  10.   

    理解错了。。
    select * from movie a
    where not exists
    (select * from tb where name=a.name and id>a.id)
      

  11.   

    http://topic.csdn.net/u/20080626/00/43d0d10c-28f1-418d-a05b-663880da278a.html?85256
      

  12.   

    select * from movie a
    where not exists(select * from movie where name=a.name and id>a.id)
    and name='abcd'  --条件
      

  13.   

    ;WITH MU AS(
    SELECT ROW_NUMBER() OVER (PATITION BY [NAME] ORDER BY [NAME]) 'MU_ID',* FROM TB
    )
    SELECT * FROM MU WHERE MU_ID=1
      

  14.   


    select 
      * 
    from 
      movie t
    where 
      not exists(select 1 from movie where name=t.name and id>t.id)
    and
      name='abcd'
      

  15.   


    40秒? 能不能提高点速度呢?我的这个程序是前台调用后台,太慢好像不太好,,我的这个还要模糊查询,,我用like,一样.
      

  16.   

    有LIKE当然会慢点啦,'FDAF%'能这样的话可以用到索引
      

  17.   

    你有条件,可以在条件上加上索引,至于上面的方法,也可以改改,效率可能要高点SELECT * FROM movie M 
    WHERE ID =(SELECT MAX(ID) FROM movie WHERE NAME=M.NAME) 
    AND M.NAME=...... SELECT * FROM movie M 
    WHERE ID =(SELECT MIN(ID) FROM movie WHERE NAME=M.NAME) 
    AND M.NAME=...... 
      

  18.   

    程序不太懂哦,处理这样的数据SQL挺方便了,就是你要模糊查询的那个很不好搞,全文索引可能效率也不怎么高