排列: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 |
总共21行组合
字数不足字数不足字数不足字数不足字数不足字数不足字数不足字数不足字数不足