これらの列を持つテーブル BNK_ACCT_GRP_ST があるとします。
Column Name ID Pk Null? Data Type
BNK_ACCT_GRP_ST_ID1 1 N NUMBER (15)
BNK_ACCT_ID 2 N NUMBER (15)
BNK_ACCT_GRP_ID 3 N NUMBER (15)
BNK_ACCT_GRP_ST_CD 4 N NUMBER (4)
BNK_ACGRP_ST_SRC_EVNT_TYP_CD 8 N NUMBER (4)
BNK_ACGRP_ST_SRC_TRAN_ID 9 N NUMBER (15)
FNCL_GRP_ID 10 N NUMBER (15)
CREN_DT 12 N DATE
LAST_UPD_DT 13 N DATE
PCSG_DT 14 N DATE
BNK_ACCT_GRP_ST_SEQ_NO 15 N NUMBER (15)
その bnk_accts データが取り込まれます:
例 1:
BNK_ACCT_GRP_ST_ID BNK_ACCT_ID BNK_ACCT_GRP_ID BNK_ACCT_GRP_ST_CD BNK_ACGRP_ST_SRC_EVNT_TYP_CD FNCL_GRP_ID BNK_ACCT_GRP_ST_SEQ_NO
2282 150627009 1724 4 150 111111111 2
2283 150627009 1440 2 149 111111112 1
1908 150627009 1725 2 134 111111111 1
1906 150627009 1441 2 135 111111111 7
例 #2:
BNK_ACCT_GRP_ST_ID BNK_ACCT_ID BNK_ACCT_GRP_ID BNK_ACCT_GRP_ST_CD BNK_ACGRP_ST_SRC_EVNT_TYP_CD FNCL_GRP_ID BNK_ACCT_GRP_ST_SEQ_NO
2364 150275031 1435 2 114 133333333 3
2365 150275031 1436 7 116 133333333 2
1902 150275031 1435 1 72 133333333 2
1903 150275031 1435 2 36 133333333 1
1904 150275031 1436 5 74 133333333 1
どこ:
- BNK_ACCT_GRP_ST_ID は自動インクリメント フィールドです。
- BNK_ACCT_ID は実際には銀行口座番号の ID です。
- BNK_ACCT_GRP_ID は grp id (常に増加) です。
- BNK_ACCT_GRP_ST_CD、BNK_ACGRP_ST_SRC_EVNT_TYP_CD、および BNK_ACGRP_ST_SRC_TRAN_ID は、トランス目的の ID です。
- FNCL_GRP_ID - この銀行口座が属する銀行機関の ID
必要なもの: FNCL_GRP_ID に基づいて各 BNK_ACCT_ID の最新の BNK_ACCT_GRP_ID をプルするクエリを作成する。ここで、1 つの銀行口座は 1 つ以上の fncl 機関に属することができるため、クエリは次の出力を返す必要があります。
例#1:
FNCL_GRP_ID BNK_ACCT_ID BNK_ACCT_GRP_ID
111111111 150627009 1725
111111112 150627009 1440
例#2:
FNCL_GRP_ID BNK_ACCT_ID BNK_ACCT_GRP_ID
133333333 150275031 1436
私は最近、のコンボなど、多くのことを試しました
(select distinct BNK_ACCT_ID,FNCL_GRP_ID) join to rank() over (partiton by )
しかし運がない。