select top 10 percent * from(select distinct qy_name,qy_add from biao)a order by newid()

解决方案 »

  1.   

    select top 10 percent qy_name,qy_add from biao a where not exists (select 1 from biao where qy_name=a.qy_name and qy_add=a.qy_add) order by newid()
      

  2.   

    SELECT distinct TOP 10 percent V_YMT_BSQY_SG.qy_key ,V_YMT_BSQY_SG.Qy_name, V_YMT_BSQY_SG.Qy_xx_add, V_YMT_BSQY_SG.Qy_xx_zip, NEWID() as qy_zxdj FROM V_YMT_BSQY_SG INNER JOIN V_YMT_BSQY_SGZZ ON V_YMT_BSQY_SG.qy_key = V_YMT_BSQY_SGZZ.qy_key WHERE (V_YMT_BSQY_SGZZ.qy_zxdj = '906004') ORDER BY NEWID() 我写掉了,全句话是这样的!
      

  3.   

    select TOP 10 percent *
    from(SELECT distinct V_YMT_BSQY_SG.qy_key ,V_YMT_BSQY_SG.Qy_name, V_YMT_BSQY_SG.Qy_xx_add, V_YMT_BSQY_SG.Qy_xx_zip FROM V_YMT_BSQY_SG INNER JOIN V_YMT_BSQY_SGZZ ON V_YMT_BSQY_SG.qy_key = V_YMT_BSQY_SGZZ.qy_key WHERE (V_YMT_BSQY_SGZZ.qy_zxdj = '906004') )a ORDER BY NEWID()
      

  4.   

    zjcxc(邹建) 高手请指点一下!
      

  5.   

    谢谢,解决了,我发现自己对sql尤其是一些连接查询的理解不是很好,不能灵活运用,请zjcxc(邹建) 高手说说应该从哪方面着手加强?
      

  6.   

    另外我想问一下为何select distinct top 10 percent  qy_name,qy_add,newid() from biao order by newid()这样的话就不能distinct qy_name
      

  7.   

    我的为什么不行呀?
    一个表tbTest有多个字段:
    CustNo, ItemID, TotalCount
    100      1        45
    100      2        52
    100      3        78
    101      1        46
    102      1        95
    102      2        88
    103      1        16
    103      2        62其中字段CustNo和ItemID合起来使每条记录都不会完全重复,即这两个字段不会有完全重复的记录
    想选出如下的结果:
    CustNo, ItemID, TotalCount
    100      3        78
    101      1        46
    102      1        95
    103      2        62
    结果描述:
    CustNo不同,每个ItemID是该CustNo中的最大值,TotalCount是和该条记录相对应的值
    我的SQL如下:
    Select distinct CustNo, ItemID, TotalCount from tbTest where ...
    选择出的结果是有重复的,即第一列CustNo有多个100,102, 103...根据以上zjcxc(邹建)的写:
    select * from (select distinct CustNo,ItemID, TotalCount from tbTest where ...) a
    结果是一样的有重复我怎么写呢?
      

  8.   

    to jszj:select * from
    (
    select CustNo, max(ItemID) as ItemID from tbTest group by CustNo
    ) as tmp
    left outer join
    tbTest
    on tbTest.CustNo = tmp.CustNo
    and tbTest.ItemID = tmp.ItemID