t1:
ID  NAME  SEX   ...
----------------------------
001  张三  男   ...
001  张三  男   ...
003  李四  女   ...
001  张三  男   ...
005  王九  男   ...
----------------------------
t2:
ID  FENSHU  ...
----------------------------
001  95    ...
002  86    ...
003  70    ...
004  78    ...
005  82    ...
----------------------------SELECT t1.id,t1.name,t1.sex,t2.fenshu 
FROM TAB t1,tab_2.t2 
WHERE t1.id = t2.id得结果:
ID  NAME  SEX  FENSHU  随机号     ...
------------------------------------
001  张三  男      95    0098A    ...
001  张三  男      95    0098B    ...
003  李四  女      70    00981    ...
001  张三  男      95    0280     ...
005  王九  男      82    00984    ...
----------------------------
怎么样修改语句得结果成为:
ID  NAME  SEX  FENSHU  随机号     ...
------------------------------------
001  张三  男      95    0098A    ...
003  李四  女      70    00981    ...
005  王九  男      82    00984    ...
----------------------------

解决方案 »

  1.   

    SELECT t1.id,t1.name,t1.sex,t2.fenshu ,row_number(partition by t1.id order by t1.id) rn
    FROM TAB t1,tab_2.t2 
    WHERE t1.id = t2.id and rn =1
      

  2.   

    SELECT t1.id,t1.name,t1.sex,t2.fenshu 
    FROM TAB t1,tab_2.t2 
    WHERE t1.id = t2.id and rownum < 4;
      

  3.   


    select t.*
      from (SELECT t1.id,
                   t1.name,
                   t1.sex,
                   t2.fenshu,
                   row_number() over(partition by t1.id order by t1.id) rn
              FROM TAB t1, tab_2.t2
             WHERE t1.id = t2.id) t
     where t.rn = 1
      

  4.   

    SELECT distinct t1.id,t1.name,t1.sex,t2.fenshu 
    FROM TAB t1,tab_2.t2 
    WHERE t1.id = t2.id