Middle
Hogyan építsünk szurrogát kulcsot különböző típusú hitelszerződésekhez, amelyek átfedő számokat tartalmaznak?
sobes.tech MI
Válasz az MI-től
Annak érdekében, hogy olyan pótkulcsot hozzunk létre, amely egyedileg azonosítja a különböző típusú hitelszerződéseket, amelyek számai átfednek, használhatunk egy kombinált kulcsot, amely a következőket tartalmazza:
- Hitel szerződéstípus: adjunk hozzá egy mezőt, amely a szerződés típusát jelöli (például kód vagy sztring).
- Szerződés száma: az eredeti szám, amely átfedhet a típusok között.
- További attribútumok (ha szükséges): például a szerződés aláírásának dátuma vagy az ügyfél azonosítója.
Példa egy pótkulcs létrehozására egy adatbázisban:
-- Hitel szerződések táblája
CREATE TABLE CreditContracts (
ContractType VARCHAR(50),
ContractNumber VARCHAR(50),
SurrogateKey VARCHAR(100) PRIMARY KEY,
-- egyéb mezők
);
-- Beszúráskor a pótkulcs a konkatenációval jön létre
INSERT INTO CreditContracts (ContractType, ContractNumber, SurrogateKey)
VALUES ('Jelzálog', '12345', CONCAT('Jelzálog_', '12345'));
Vagy egy ETL/ML pipeline-ban egyedi azonosítót így lehet létrehozni:
contracts['surrogate_key'] = contracts['contract_type'] + '_' + contracts['contract_number'].astype(str)
Így, még ha a szerződésszámok átfednek is a típusok között, a kombinált kulcs garantálja az egyediséget.