我现在有个数据表,其中有个TypeID字段,类型从1-5,现在我想将1-5的数据各取一条,应该怎么做呢?
如果今天的数据中,只有1,2,5,的,数据取的顺序是1,3,5,1,3这样的顺序取5条,又该如何做呢?

解决方案 »

  1.   

    select * from t where id in (select max(id) from t group by typeid)
      

  2.   

    可否这样:
    select top 1 * from youTable where TypeID='1'
    unin
    select top 1 * from youTable where TypeID='2'
     ..................
      

  3.   

    就是有的TypeID没有数据的时候,就将已有的数据再显示一遍比如,如果5种TypeID都有的话,显示的顺序就是,1,2,3,4,5各显示一条如果今天的数据只有TypeiD为1,3,5的,显示的顺序就是:1,3,5,1,3也就是说在原有的顺序显示之后,再将1,3数据再显示一遍当然,我只是举个例子,不一定是2,4,数据不存在,也可能是其它的ID不存在