0

このような列があり、最初の「-」に基づいて分割する必要があります。例を以下に示します

MGESAD :
"6095 - NCAM - US - GIUTCB - US Consumer Bank - USRB"
"6595 - NBAM - US - UDAS - Consumer Bank - USRB"
"0595 - NWWAM - US - GWCB - US BANK Bank - USRB - TBL"

I need to split this column into:

Col1  Col2
6095  NCAM - US - GIUTCB - US Consumer Bank - USRB
6595  NBAM - US - UDAS - Consumer Bank - USRB
0595  NWWAM - US - GWCB - US BANK Bank - USRB - TBL

これまでに試したこと:

db.getCollection("arTes").aggregate([
    {
        $addFields: { 
            MGE_ID: { $arrayElemAt: [ { "$split": [ "$MGESAD y", "-"] }, 0 ] },
            MGE_DESC: { $arrayElemAt:[{ "$split": [ "$MGESAD ", "-"] },2] }
        }
    }
])

MGE_DESC は、最初の分割を除く文字列全体が必要な 2 つの要素のみを提供しています。

これを行う簡単な方法があれば教えてください。

4

1 に答える 1