暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

排列组合SQL

西二旗IT女 2020-11-08
2360

排列:Permutation  Arrangement,数学符号A/P。表示从 n 个人中,有顺序地抽出 m 个人的抽法数

组合:Combination,数学符号C表示从 n 个人中,不计顺序地抽出 m 个人的抽法数。

1.测试数据查询

SELECT emplid 

 , start_dt 

  FROM ps_PRIORWORK_EXPER

where emplid='测试IDXX'

  总共7行数据

2.A7中取2=7*6=42,结果应当返回42行的排列。

sql查询:

SELECT  a.emplid 

,A.seqno

 , a.start_dt  

,B.seqno

 , b.start_dt 

  FROM ( 

 SELECT rownum AS seqno 

 , x.* 

  FROM ( 

 SELECT emplid 

 , start_dt 

  FROM ps_PRIORWORK_EXPER

where emplid='测试IDXX'

  ORDER BY emplid) x) a 

  , ( 

 SELECT rownum AS seqno 

 , y.* 

  FROM ( 

 SELECT emplid 

 , start_dt 

  FROM ps_PRIORWORK_EXPER 

    where emplid='测试IDXX'

  ORDER BY emplid) y) b 

 WHERE a.emplid = b.emplid 

   AND a.seqno <> b.seqno


总共42行排列。


3.C7中取2=7*6/2=21,,结果应当返回21行的组合。

sql查询:

SELECT  a.emplid 

,A.seqno

 , a.start_dt  

,B.seqno

 , b.start_dt 

  FROM ( 

 SELECT rownum AS seqno 

 , x.* 

  FROM ( 

 SELECT emplid 

 , start_dt 

  FROM ps_PRIORWORK_EXPER

where emplid='测试IDXX'

  ORDER BY emplid) x) a 

  , ( 

 SELECT rownum AS seqno 

 , y.* 

  FROM ( 

 SELECT emplid 

 , start_dt 

  FROM ps_PRIORWORK_EXPER 

    where emplid='测试IDXX'

  ORDER BY emplid) y) b 

 WHERE a.emplid = b.emplid 

   AND a.seqno < b.seqno

总共21行组合


字数不足字数不足字数不足字数不足字数不足字数不足字数不足字数不足字数不足

文章转载自西二旗IT女,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论