Procédure stockée "Update table" avec pl sql pour rechercher des doublons
* Bonjour, *
En supposant ne disposer que d'une table avec les champs suivants:
members_tbl collones : SN, FN, DB, IDDBL,FLAG, DBLCRIT
Je voudrais créer une procédure stockée qui puisse mettre à jour une table si les conditions sont remplies afin de détecter des doublons potentiels en utilisant l'algorithme de jaro_winkler. Avec cet algorithme :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
id_dup := 1;
FOR (i in 1 to Nrow(members_tbl)) THEN
{
FOR (j in (i+1) to Nrow(members_tbl)) THEN
{
IF(members_tbl(i).iddbl IS NULL) THEN
members_tbl(i).iddbl := id_dup
IF (((members_tbl(i).DB ==members_tbl(j).DB)
AND (UTL_MATCH.jaro_winkler_similarity(members_tbl(i).SN,members_tbl(j).SN) > 80)
AND (UTL_MATCH.jaro_winkler_similarity(members_tbl(i).FN,members_tbl(j).FN) > 80))
AND (members_tbl(j).iddbl IS NULL)) THEN
{
members_tbl(j).iddbl := id_dup;
members_tbl(i).flag := 1;
members_tbl(j).flag := 1;
members_tbl(i).dblcrit:= 1;
members_tbl(j).dblcrit:= 1;
}
}
id_dup := id_dup + 1;
} |
Comment pourrais je transcrire cet algorithme en pl/sql s'il vous plaît ?
Merci d'avance.