Program, search device, and method for merging multiple records

The program and search device use a recursive self-function to efficiently assign identifiers to matching records, addressing the challenge of large-scale personal information collation by minimizing steps and resources, thus enhancing accuracy and reducing computational load.

JP2025112722APending Publication Date: 2025-08-01AMITEC SOLUTIONS CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2024007138
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-01-22
Publication Date
2025-08-01

AI Technical Summary

Technical Problem

Existing systems struggle to efficiently determine and combine records of personal information from different systems with varying levels of matching criteria, requiring significant computational resources and operator confirmation, especially when dealing with large datasets.

Method used

A program and search device that utilizes a recursive self-function to assign identical identifiers to records with matching personal information, minimizing the number of steps required for name matching and record collation across multiple systems.

Benefits of technology

Enables efficient clustering of records with common items of personal information, reducing computational resources and operator intervention, while maintaining accuracy in identifying duplicate records.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025112722000001_ABST
    Figure 2025112722000001_ABST
Patent Text Reader

Abstract

To provide a program or the like which executes a combination of records having common personal information items with a small number of steps when merging multiple records.SOLUTION: A search device includes a memory database storing multiple records composed of names and multiple pieces of personal information, and a computer is caused to execute: a first step of searching for multiple target records with the same name; and a second step of calling a self-function that assigns to a second target record the same personal identifier as that of a first target record when a search for the second target record having any of the personal information that is the same from the viewpoint of the first target record is made, and then, by recursively calling the self-function in stages, assigning to a third target record the same personal identifier as that of the second target record when a search for the third target record having any of the personal information that is the same from the viewpoint of the second target record is made.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a technique of a program for collating a plurality of records.

Background Art

[0002] Companies and administrative agencies manage various personal information in databases. Personal information is also used for business support for users and as an interface for online access from users. By managing these personal information in the cloud as a customer relationship management (CRM) system, users can be made to perform operations such as inputting, editing, and viewing personal information. However, since users input it themselves, the same person is often duplicated due to incorrect descriptions, and the accuracy of the entire database often decreases.

[0003] Therefore, a "collation" process based on the name is required for a large amount of personal information in the database. Collation refers to a process of unifying duplicate registered personal information into the same person based on the name (Chinese characters / Kana), date of birth, telephone number, address, etc. When there is a possibility of the same person, a plurality of records are unified by assigning the same ID (Identifier).

[0004] Conventionally, there is a technique for performing personal collation and household collation on a customer information database (see, for example, Patent Document 1). According to this technique, by performing both personal collation based on personal information and household collation based on a plurality of individuals, it is possible to create a database of detailed customer information.

[0005] Also, there is a technique that can quickly perform record collation even when the number of records to be processed is large. For example, there is a technique of creating a link table based on the number of records to be judged for identity and the number of rules related to the identity judgment, and setting links representing the identity between records in a ring shape in each cell (see, for example, Patent Document 2). Also, there is a technique of setting links representing the identity between records in a directed graph (tree shape) in each cell of the link table (see, for example, Patent Document 3).

[0006] FIG. 1 is a functional configuration diagram of a search device in the prior art.

[0007] According to FIG. 1, the search device 1 collects personal information of different systems A, B,... and registers it in a database, and executes a record collation process. For example, assume that personal information of a life insurance company and personal information of a credit company are registered. Here, since record k and record k + 5 completely match in terms of name (Watanabe / Sachiko, WATANABE / SACHIKO), date of birth (19600102), phone number (0511111111), and address (Station Front 1-1-1), they can be collated as the same person. On the other hand, considering the relationship between other records, they do not completely match in terms of name (Chinese characters / Kana), date of birth, phone number, and address, and it is difficult to determine whether they are the same person.

[0008] For example, assume the following records. (ID) (Chinese name) (Kana name) (Date of birth) (Phone number) (Address) k Watanabe / Sachiko WATANABE / SACHIKO 19600102 0511111111 Station Front 1-1-1 k + 1 Watanabe / Sachiko WATANABE / YUKIKO 19600102 0511111111 Station Front 1-1-1 k + 2 Watanabe / Sachiko WATANABE / SACHIKO 19600201 0511111111 Station Front 1-1-1 k + 3 Watanabe / Sachiko WATABE / SACHIKO 19600102 0511111112 Station Front 1-1-1 k + 4 Watanabe / Sachiko 19600102 0511111112 2-1-1 in front of the station k + 5 Watanabe / Sachiko 19600102 0511111111 1-1-1 in front of the station k + 6 Watanabe / Sachiko 19600102 0511111111 1-1-1 in front of the station k + 7 Watanabe / Yukiko 19600201 0511111112 1-1-1 in front of the station

Prior Art Documents

Patent Documents

[0009]

Patent Document 1

Patent Document 2

Patent Document 3

Summary of the Invention

Problems to be Solved by the Invention

[0010] Regarding the example in Figure 1, it is necessary to determine whether the records k + 1 to k + 7 can be recognized as the same person when viewed from record k. For records k and k + 1, the Chinese characters of the name are the same, but the kana of the name and the phone number are different. For records k and k + 2, the Chinese characters of the name are different. For records k and k + 3, the Chinese characters of the name are the same, but the kana of the name and the phone number are different. For records k and k + 4, the Chinese characters of the name are different. For records k and k + 5, the Chinese characters of the name, the kana of the name, the date of birth, the phone number, and the address are all the same, and it can be recognized as the same person. For records k and k + 6, the Chinese characters of the name are the same, but the kana of the name is different. For records k and k + 7, the Chinese characters of the name are the same, but the kana of the name, the date of birth, the phone number, and the address are different.

[0011] In this way, it can be determined that records k and k + 5 are of the same person, but none of the other combinations can be determined to be of the same person. Moreover, even in Patent Documents 1 to 3 described above, name matching only determines identity for pre-specified items (combinations of Chinese characters of name, kana of name, date of birth, telephone number, address, etc.).

[0012] In contrast, the inventor of the present application considered whether it is possible to present to the operator, as a name matching result, "combinations of records having common items", even for records of personal information collected from different systems. Ultimately, confirmation work by the operator is essential for correcting the correct personal information. In addition, the inventor of the present application considered whether it is possible to execute combinations of records that can be determined to be of the same person with "as few program steps as possible". Generally, name matching is determined by pairwise comparison of records. Therefore, for a large number of records, an enormous amount of computer resources are required for name matching processing.

[0013] Therefore, an object of the present invention is to provide a program, a search device, and a method that can execute combinations of records having common items of personal information with as few steps as possible when matching a plurality of records.

Means for Solving the Problems

[0014] According to the present invention, in a program that causes a computer mounted on a search device having a memory database storing a plurality of records composed of names and a plurality of pieces of personal information to perform name matching on the plurality of records, a first step of searching for a plurality of target records having the same name; When searching for a second target record with any personal information being the same as that of the first target record, after calling a self-function that assigns the same personal identifier as the first target record to the second target record, step by step, when searching for a third target record with any personal information being the same as that of the second target record by recursive call of the self-function, a second step of assigning the same personal identifier as the second target record to the third target record and characterized by causing a computer to execute it.

[0015] According to another embodiment of the program of the present invention, The second step further step by step, when searching for a fourth target record with any personal information being the same as that of the third target record by recursive call of the self-function, assigns the same personal identifier as the third target record to the fourth target record and it is also preferable to cause a computer to execute it in this way.

[0016] According to another embodiment of the program of the present invention, After executing the first step and the second step with the name in Chinese characters, execute the first step and the second step with the name in kana and it is also preferable to cause a computer to execute it in this way.

[0017] According to another embodiment of the program of the present invention, The plurality of personal information includes date of birth, telephone number and address and it is also preferable to cause a computer to execute it in this way.

[0018] According to another embodiment of the program of the present invention, The name consists of a surname and a given name, a third step of searching for a plurality of household target records with the same surname, When searching for a second household target record with any personal information being the same as that in the first household target record, after calling a self-function that assigns the same household identifier as the first household target record to the second household target record, step by step, when searching for a third household target record with any personal information being the same as that in the second household target record by recursively calling the self-function, a fourth step of assigning the same household identifier as the second household target record to the third household target record It is also preferable to further cause the computer to execute it.

[0019] According to another embodiment of the program of the present invention, It performs name matching among a plurality of records in different systems, The memory database stores a mixture of a plurality of records in different systems. It is also preferable to cause the computer to execute it in this way.

[0020] According to the present invention, in a search device having a memory database storing a plurality of records consisting of names and a plurality of personal information, and performing name matching on the plurality of records, a record search means for searching for a plurality of target records with the same name; When searching for a second target record with any personal information being the same as that in the first target record, after calling a self-function that assigns the same personal identifier as the first target record to the second target record, step by step, when searching for a third target record with any personal information being the same as that in the second target record by recursively calling the self-function, a recursive search means for assigning the same personal identifier as the second target record to the third target record characterized by having.

[0021] According to the present invention, for a search device having a memory database storing a plurality of records consisting of names and a plurality of personal information, in a name matching method for performing name matching on the plurality of records, the search device A first step of retrieving a plurality of target records with the same name, When retrieving a second target record with the same personal information as seen from the first target record, after calling a self-function that assigns the same personal identifier as the first target record to the second target record, step by step, by recursively calling the self-function, when retrieving a third target record with the same personal information as seen from the second target record, a second step of assigning the same personal identifier as the second target record to the third target record It is characterized by executing.

Effect of the Invention

[0022] According to the program, search device, and method of the present invention, when clustering a plurality of records, combinations of records having common items of personal information can be executed with as few steps as possible.

Brief Description of the Drawings

[0023]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Embodiments for Carrying Out the Invention

[0024] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

[0025] FIG. 2 is a functional configuration diagram of the search device in the present invention.

[0026] According to FIG. 2, the search device 1 includes a memory database 10, a record search unit 11 (S1), and a recursive search unit 12 (S2). The record search unit 11 and the recursive search unit 12 may be programs that cause a computer installed in the search device 1 to execute so as to group a plurality of records. Also, the processing flow of the plurality of functional components of the search device 1 can be understood as a grouping method.

[0027] [Memory Database 10] The memory database 10 stores a plurality of records consisting of names (Chinese characters / Kana) and a plurality of personal information (date of birth, telephone number, address, etc.). As an embodiment of the present invention, it will be described as including the date of birth, telephone number, and address as a plurality of personal information, but of course, it may include other things.

[0028] The search device 1 of the present invention is suitable for grouping between a plurality of records in different systems. For example, personal information in CSV format (a configuration of text and cells) can be used as columns, and a plurality of records can be used as rows. That is, the memory database 10 may store a mixture of a plurality of records in different systems. According to FIG. 2, for example, it is assumed that a large number of records of system A of a life insurance company and system B of a credit company are stored in a mixed manner.

[0029] The memory database 10 may be an ISAM (Indexed Sequential Access Method). ISAM creates a compact index file, separate from the large-scale database, that contains only key values and pointers for identifying specific records. ISAM creates and operates an indexed sequential file consisting of multiple files on a file system. By searching this index file, the position of a record in the original database can be identified, allowing only that record to be processed.

[0030] According to FIG. 2, it is assumed that the following records are stored in the memory database 10, as in FIG. (ID) (Name in Kanji) (Name in Kana) (Date of Birth) (Phone Number) (Address) k Watanabe / Sachiko Watanabe / Sachiko 19600102 0511111111 1-1-1 Station Front k+1 Watanabe / Yukiko 19600102 0511111112 1-1-1 Station Front k+2 Watanabe / Sachiko 19600201 0511111111 Station Front 1-1-1 k+3 Watanabe / Sachiko 19600102 0511111112 1-1-1 Station Front k+4 Watanabe / Yukiko 19600102 0511111112 2-1-1 Station Front k+5 Watanabe / Sachiko 19600102 0511111111 1-1-1 Station Front k+6 Watanabe / Sachiko 19600102 0511111111 1-1-1 Station Front k+7 Watanabe / Yukiko 19600201 0511111112 1-1-2 Station Front

[0031] For example, record k+1, which has the same name in kanji as record k, has a different name in kana and telephone number, but the date of birth (19600102) and address (1-1-1 Ekimae) are the same, so it can be determined that there is a high possibility that it is the same person. Next, looking from record k, it can be determined that record k+7 with the same Chinese name is highly likely to be a different person because all of the kana name, date of birth, phone number, and address are different. On the other hand, looking from record k+1, record k+7 with the same Chinese name has different kana name, date of birth, and address, but the phone number (0511111112) is the same, so it can also be determined that there is a high possibility that they are the same person. In this case, according to the present invention, it can also be determined that records k, k+1, and k+7 are highly likely to be the same person. That is, records k and k+7 are determined to be highly likely to be the same person via record k+1.

[0032] According to the name matching method of the present invention, the determination is made recursively, such as looking at record k+1 from record k, then looking at record k+2 from record k+1, and so on. By recursively calling a self-function within the program, the number of steps can be minimized as much as possible. Of course, it is also possible to create a program by loop processing without using the self-function of recursive call. However, when describing a program by loop processing, it is necessary to set the number of loop iterations and configure nested loops. In contrast, according to the present invention, the number of consecutive records recognized as the same person when looking from record k is unknown. There may be cases where there are no records recognized as the same person, or there may be cases where a large number of records are recursively consecutive. In such cases where the number of loop iterations cannot be set, the number of steps of the program can be reduced by using the self-function of recursive call.

[0033] As another embodiment of the present invention, it is preferable to automatically unify the birth date in the Gregorian calendar / Japanese calendar. Also, it is preferable to automatically unify the phone number, including the presence or absence of hyphens. Further, it is preferable to normalize and edit the address. For example, extract only the numbers from the address description in character string form and make them into a character string concatenated with the symbol "-". For example, notations such as "1-chome 1-ban 1-go" and "Ichibanchome 1-1" are unified into the notation "1-1-1".

[0034] [Record Search Unit 11] The record search unit 11 searches for a plurality of target records with the same name. Specifically, it sorts them. Here, those arranged in the same order of "Chinese characters of the name" may be used, or those arranged in the same order of "Katakana of the name" may be used.

[0035] [Recursive Search Unit 12] When the recursive search unit 12 searches for a second target record (for example, k + 1) with the same personal information as the first target record (for example, k), it calls a self-function that assigns the same personal identifier (for example, KID = 1) as the first target record to the second target record. After that, step by step, by the recursive call of the self-function, when searching for a third target record (for example, k + 2) with the same personal information as the second target record (for example, k + 1), the same personal identifier (for example, KID = 1) as the second target record is assigned to the third target record. Furthermore, step by step, by the recursive call of the self-function, when searching for a fourth target record (for example, k + 3) with the same personal information as the third target record (for example, k + 2), the same personal identifier (for example, KID = 1) as the third target record is assigned to the fourth target record. In this way, every time a record with the same personal information is searched, a recursive call of the self-function is made.

[0036] Figure 3 is a flowchart of the grouping process in the search device of the present invention.

[0037] After executing the record search process (S1) and the recursive search process (S2) to group the name by "Chinese characters", execute the record search process (S1) and the recursive search process (S2) to group the name by "Kana". Finally, execute the record search process (S1) and the recursive search process (S2) to group by "surname".

[0038] <s10>As initialization, set the personal ID (KID) to 1. <s11>Execution of Name Kanji and Record Search Processing <s12>Execution of Chinese Name and Recursive Search Processing <s21>Execution of Surname Kana / Record Search Process <s22>Name in Katakana, Execution of Recursive Search Processing <s30>As initialization, set the household ID (SID) = 1. <s31>Execution of surname record search processing <s32>Execution of surname-recursive search processing

[0039] <s11>Execution of Japanese Name Kanji Record Search Processing Figure 4 is an explanatory diagram of a Japanese name kanji record search.

[0040] A plurality of records stored in the memory database 10 are sorted by Japanese name kanji. According to Figure 4, "Watanabe / Sachiko" is arranged in records n to n + 5, and then "Watanabe / Sachiko" is arranged in records m to m + 1. In addition, a max value (FFh) is pre-assigned to the personal ID (KID) of all records.

[0041] <s12>Execution of Chinese Name Recursive Search Processing Figure 5 is a flowchart of the recursive search for Chinese names.

[0042] (S121) For the range of record IDs with the same Chinese name, parameters are set as follows. Start Record ID (SP) End Record ID (EP) And between S124, the current record ID (CP) is looped through SP to EP where the Chinese name is the same. Note that as the initial value, CP = SP = 1 is used to start (n = 1). (S122) Call the self - function RecF. RecF(SP, EP, CP, KID) At this time, CP = SP. (S123) After returning from the self - function RecF, update the start record (SP) to the end record ID (EP)+1. Also, increment the already issued personal ID (KID) by 1 to get a new KID. (S124) Then, update to the next SP to EP where the name (Chinese / Kana) is the same. Also, increment the current record ID (CP) by 1. And loop between S121.

[0043] (Self - function RecF(SP, EP, CP, KID) of recursive call) (S1221) Loop the variable record ID (IX) between S1228 for SP to EP where the Chinese name is the same. IX: Local variable (S1222) If the personal ID (KID) has been assigned to the variable record ID (IX), go to S1228. That is, if the KID of the variable record ID (IX) is a value other than the max value, it is determined that it has been assigned. (S1223) Compare the birth date of the current record ID (CP) with the birth date of the variable record ID (IX). (S1224) Compare the phone number of the current record ID (CP) with the phone number of the variable record ID (IX). (S1225) Compare the address of the current record ID (CP) with the address of the variable record ID (IX). (S1226) If any of the date of birth, phone number, or address is the same in S1223 to S1225, assign KID to the variable record ID (IX). (S1227) Then, recursively call the self-function RecF. RecF(SP, EP, IX, KID) ※ IX is called recursively as CP (S1228) If all of the date of birth, phone number, and address in S1223 to S1225 are different, and KID has been assigned to the variable record ID (IX), increment the displacement record ID (IX) by +1 and loop between S1221. (S1229) After the loop of S1221 to S1228 ends, substitute the end record ID (EP) into the current record ID (CP) and return to S122.

[0044] Figure 6 is an explanatory diagram in the recursive search process of Chinese characters of names.

[0045] The table in Figure 6 is updated by recursive search from the table in Figure 4 described above. Hereinafter, the process of updating from the table in Figure 4 to the table in Figure 6 will be described along the flowchart in Figure 5.

[0046] (S121) For record IDs n to n + 5 in the range where the Chinese characters of the name "Watanabe / Sachiko" are the same, parameters are set as follows. SP = n EP = n + 5 SP~EP: Range of records with the same Chinese characters of the name Note that starting from CP = SP = 1 as the initial value (n = 1), CP = SP = n at this stage. (S122) Call the self-function RecF(SP(n), EP(n + 5), CP(n), KID).

[0047] ->(S1221) Update IX with SP(n) to EP(n + 5) and loop between S1228. (S1222) Since no KID is assigned to IX(n), the process proceeds to S1223. (S1223) Comparing CP(n) and IX(n), the dates of birth match. (S1226) Assign KID(1) to IX(n). (S1227) Recursively call the self - function RecF(SP, EP, IX, KID). That is, it is recursively called with CP = IX(n).

[0048] -> (S1221) Between S1228, update IX with SP(n)~EP(n + 5) and loop. (S1222) Since KID is assigned to IX(n), the process proceeds to S1228. (S1228) Increment IX by 1 to make it IX(n + 1), and loop back to S1221. (S1222) Since no KID is assigned to IX(n + 1), the process proceeds to S1223. (S1223) Comparing CP(n) and IX(n + 1), the dates of birth match. (S1226) Assign KID(1) to IX(n + 1). (S1227) Recursively call the self - function RecF(SP, EP, IX, KID). That is, it is recursively called with CP = IX(n + 1).

[0049] -> (S1221) Between S1228, update IX with SP(n)~EP(n + 5) and loop. (S1222) Since KID is assigned to IX(n), the process proceeds to S1228. (S1228) Increment IX by 1 to make it IX(n + 1), and loop back to S1221. (S1222) Since KID is assigned to IX(n + 1), the process proceeds to S1228. (S1228) Increment IX by 1 to make it IX(n + 2), and loop back to S1221. (S1222) Since no KID is assigned to IX(n + 2), the process proceeds to S1223. (S1223) When comparing CP(n+1) with IX(n+2), the dates of birth match. (S1226) Assign KID(1) to IX(n+2). (S1227) Recursively call the self-function RecF(SP, EP, IX, KID). That is, it is recursively called with CP = IX(n+2).

[0050] -> Between (S1221) and S1228, update IX with SP(n)~EP(n+5) and loop. (S1222) Since KID is assigned from IX(n) to IX(n+2), loop between S1228 and S1221 and loop. (S1228) Increment IX by +1, set it as IX(n+3), and loop to S1221. (S1222) Since KID is not assigned to IX(n+3), transfer to S1223. (S1223) When comparing CP(n+2) with IX(n+3), the dates of birth do not match. (S1224) When comparing CP(n+2) with IX(n+3), the phone numbers match. (S1226) Assign KID(1) to IX(n+3). (S1227) Recursively call the self-function RecF(SP, EP, IX, KID). That is, it is recursively called with CP = IX(n+3).

[0051] -> Between (S1221) and S1228, update IX with SP(n)~EP(n+5) and loop. (S1222) Since KID is assigned from IX(n) to IX(n+3), loop between S1228 and S1221 and loop. (S1228) Increment IX by +1, set it as IX(n+4), and loop to S1221. (S1222) Since KID is not assigned to IX(n+4), transfer to S1223. (S1223) When comparing CP(n+3) and IX(n+4), the dates of birth do not match. (S1224) When comparing CP(n+3) and IX(n+4), the phone numbers match. (S1226) Assign KID(1) to IX(n+4). (S1227) Then, recursively call the self-function RecF(SP, EP, IX, KID). That is, it is recursively called with CP = IX(n+4).

[0052] -> Between (S1221) and S1228, update IX with SP(n)~EP(n+5) and loop. (S1222) Since KID is assigned from IX(n) to IX(n+4), loop between S1228 and S1221. (S1228) Increment IX by +1 and loop to S1221 as IX(n+5). (S1222) Since KID is not assigned to IX(n+5), transfer to S1223. (S1223) When comparing CP(n+4) and IX(n+5), the dates of birth match. (S1226) Assign KID(1) to IX(n+5). (S1227) Recursively call the self-function RecF(SP, EP, IX, KID). That is, it is recursively called with CP = IX(n+5). However, since CP = EP here, recursively return step by step from the recursive call and return to S123.

[0053] (S1229) Then, at the end of RecF, substitute EP = CP(n+5) and return to S122.

[0054] (S123) Update the next start record ID(SP) by incrementing it by +1 to the end record ID(EP). Also, increment KID by +1 to get a new KID(2). (S124) Next, search for the range where the Chinese characters of the name "Watanabe / Sachiko" are the same. Also, increment CP by +1 and target the record next to the last EP. Then, loop back to S121. (S121) For record IDs m to m + 1 with the Chinese characters of the name "Watanabe / Sachiko", the parameters are set as follows. SP = m EP = m + 1 SP~EP: Range of records with the same Chinese characters of the name Note that at this stage, CP = SP = m. (S122) Call the self - function RecF(SP(m), EP(m + 1), CP(m), KID(2)).

[0055] ->(S1221) Between S1221 and S1228, update IX with SP(m)~EP(m + 1) and loop. (S1222) Since KID is not assigned to IX(m), proceed to S1223. (S1223) Comparing CP(m) and IX(m), the dates of birth match. (S1226) Assign KID(2) to IX(m). (S1227) Recursively call the self - function RecF(SP, EP, IX, KID). That is, it is recursively called with CP = IX(m).

[0056] ->(S1221) Between S1221 and S1228, update IX with SP(m)~EP(m + 1) and loop. (S1222) Here, since KID is assigned to IX(m), proceed to S1228. (S1228) Increment IX by +1 and loop back to S1221. (S1222) Since KID is not assigned to IX(m + 1), proceed to S1223. (S1223) Comparing CP(m) and IX(m + 1), the dates of birth do not match. (S1224) Comparing CP(m) and IX(m + 1), the phone numbers do not match. (S1225) When comparing CP(m) and IX(m+1), the addresses do not match. (S1228) Since IX has already reached EP(m+1), end the loop between S1222. (S1229) Finally, substitute CP(m) into EP and return.

[0057] (S123) After the return of the self-function RecF, increment KID by +1 to get the new KID(3). (S124) Next, search for the range where the Chinese name "Watanabe / Sachiko" is the same. Also, increment CP by +1 to get CP(m+1). (S122) For the record IDm+1 with the Chinese name "Watanabe / Sachiko", the parameters are set as follows. SP = m + 1 EP = m + 1 SP~EP: Range of records with the same name (Chinese / Kana) Still, at this stage, CP = SP = m + 1. (S123) Call the self-function RecF(SP(m), EP(m+1), CP(m), KID(3)).

[0058] -> (S1221) Update IX between SP(m+1)~EP(m+1) with S1228. (S1222) Since no KID is assigned to IX(m+1), proceed to S1223. (S1223) When comparing CP(m+1) and IX(m+1), the dates of birth match. (S1226) Assign KID(3) to IX(m+1). (S1227) Recursively call the self-function RecF(SP, EP, IX, KID). That is, it is recursively called with CP = IX.

[0059] -> (S1221) Since IX has already reached EP(m+1), end the loop between S1228 Do. (S1229) Finally, substitute CP(m+1) into EP and return.

[0060] By repeating the above-described processing procedure, a personal ID is assigned to records with the same Chinese characters of the name.

[0061] <s21>Execution of Name Kana Record Search Process FIG. 7 is an explanatory diagram in the record search of name kana.

[0062] A plurality of records stored in the memory database 10 are sorted by name kana. According to FIG. 7, “Watanabe / Sachiko” is arranged in records n to n + 2, and then “Watanabe / Yukiko” is arranged in record m. Also, “Watabe / Sachiko” is arranged in records l to l + 1, and then “Watabe / Yukiko” is arranged in records o to o + 1.

[0063] FIG. 8 is a flowchart of the recursive search of name kana.

[0064] According to FIG. 8, compared with FIG. 5, only S2222 in FIG. 8 is different from S1222 in FIG. 5. In S1222 of FIG. 5, when the personal ID (KID) has been assigned to the variable record ID (IX), the process proceeds to S1228. That is, when the KID of the variable record ID (IX) is a value other than the max value, it is determined that it has been assigned. On the other hand, in S2222 of FIG. 8, when the personal ID (KID) of the current record ID (CP) is the same as the personal ID (KID) of the variable record ID (IX), the process proceeds to S2228. That is, name grouping is performed only on the records to which different KIDs are assigned according to the Chinese name, based on the name kana.

[0065] <s22>Name in Kana · Execution of Recursive Search Processing FIG. 9 is an explanatory diagram in the recursive search processing of the name in Kana.

[0066] (S221) For record IDs n to n + 2 where the name in Kana "WATANABE / SATIKO" is the same, parameters are set as follows. SP = n EP = n + 2 SP~EP: Range of records with the same name in Kana Note that starting from CP = SP = 1 as the initial value (n = 1), at this stage, CP = SP = n. (S222) Call the self - function RecF(SP(n), EP(n + 2), CP(n), KID).

[0067] ->(S2221) Update IX between S2228 with SP(n)~EP(n + 2) and loop. (S2222) Since KID(1) of CP(n) and KID(1) of IX(n) match, transfer to S2228. (S2222) Increment IX by +1 to get IX(n + 1) and loop to S2221. (S2222) Since KID(1) of CP(n) and KID(2) of IX(n + 1) match, transfer to S2228 do. (S2228) Increment IX by +1 to get IX(n + 2) and loop to S2221. (S2222) Since KID(1) of CP(n) and KID(3) of IX(n + 2) do not match, transfer to S2223 do. (S2223) When comparing CP(n) and IX(n + 2), the dates of birth do not match. (S2224) When comparing CP(n) and IX(n + 2), the phone numbers match. (S2226) Assign KID(1) of CP(n) to IX(n + 2). (S2227) Recursively call the self - function RecF(SP, EP, IX, KID). That is, it is recursively called with CP = IX(n+2).

[0068] -> Between (S2221) and S2228, IX is updated with SP(n)~EP(n+2), but CP(n+2) = EP(n+2) This results in ending the loop between S2228. (S2229) Finally, substitute CP(n+2) into EP and return.

[0069] By repeating the processing process as described above, personal IDs are assigned to records with the same kana name.

[0070] <s31>Execution of Surname Record Search Processing A plurality of records stored in the memory database 10 are sorted by surname. For example, assume that "Watanabe / Sachiko" and "Watanabe / Sachiko" are arranged together, and "Watanabe / Kazuo" is also arranged. That is, a plurality of household target records with the same surname are searched for. In addition, a max value (FFh) is assigned in advance to the household ID (SID) of all records.

[0071] <s32>Execution of Surname-Recursive Search Processing FIG. 10 is a flowchart of household aggregation processing.

[0072] According to FIG. 10, from the sorted records with unified personal IDs, the members of the same household are unified with a household ID from different personal IDs. If the household IDs are the same, the phone numbers or addresses are likely to match.

[0073] According to FIG. 10, paying attention to the "surname" for the name, a household ID (SID) is assigned. Instead of assigning the personal ID (KID) in FIG. 5, the household ID (SID) is assigned to the record. Also, in the self-function in FIG. 10, S1222 (judgment of date of birth) in FIG. 5 does not exist, but other than that, the processing is exactly the same as in FIG. 5.

[0074] FIG. 11 is an explanatory diagram in the recursive search processing of a household.

[0075] According to FIG. 11, a plurality of records with the same surname are sorted. Then, when searching for the second household target record "Watanabe / Kazuo" with any personal information being the same, looking from the first household target record "Watanabe / Sachiko" (SID = 1), a self-function is called to assign the same household identifier (SID = 1) as the first household target record to the second household target record "Watanabe / Kazuo". After that, step by step, when searching for the third household target record with any personal information being the same, looking from the second household target record "Watanabe / Kazuo" (SID = 1) by the recursive call of the self-function, the same household identifier (SID = 1) as the second household target record is assigned to the third household target record.

[0076] As described in detail above, according to the program, search device, and method of the present invention, when aggregating a plurality of records, combinations of records having common items of personal information can be executed with as few steps as possible.

[0077] Regarding the various embodiments of the present invention described above, various changes, modifications, and omissions within the scope of the technical idea and perspective of the present invention can be easily made by those skilled in the art. The above description is merely an example and is not intended to impose any restrictions. The present invention is limited only by the claims and their equivalents.

Explanation of Reference Numerals

[0078] 1 Search device 10 Memory database 11 Record search section 12 Recursive search section

Claims

1. In a program for causing a computer mounted on a search device having a memory database storing a plurality of records composed of a name and a plurality of personal information, to execute so as to group the plurality of records, a first step of searching for a plurality of target records having the same name; when searching for a second target record having the same personal information as any one from the first target record, after calling a self-function for assigning the same personal identifier as the first target record to the second target record, step by step, when searching for a third target record having the same personal information as any one from the second target record by recursive call of the self-function, a second step of assigning the same personal identifier as the second target record to the third target record A program characterized by causing a computer to execute.

2. The second step further step by step, when searching for a fourth target record having the same personal information as any one from the third target record by recursive call of the self-function, assigns the same personal identifier as the third target record to the fourth target record The program according to claim 1, characterized by causing a computer to execute in such a manner.

3. After executing the first step and the second step with the name as Chinese characters, Execute the first step and the second step with the name as kana The program according to claim 1 or 2, characterized by causing a computer to execute in such a manner.

4. The plurality of personal information includes date of birth, telephone number, and address The program according to claim 1 or 2, characterized by causing a computer to execute in such a manner.

5. The name consists of a surname and a given name, a third step of searching for a plurality of household target records having the same surname; when searching for a second household target record having the same personal information as any one from the first household target record, after calling a self-function for assigning the same household identifier as the first household target record to the second household target record, step by step, when searching for a third household target record having the same personal information as any one from the second household target record by recursive call of the self-function, a fourth step of assigning the same household identifier as the second household target record to the third household target record The program according to claim 1 or 2, further characterized by causing a computer to execute.

6. It performs name matching among multiple records in different systems, and the memory database stores a mixture of multiple records in different systems. The program according to claim 1 or 2, characterized in that it is caused to be executed by a computer in such a manner.

7. In a search device having a memory database storing a plurality of records consisting of names and a plurality of personal information, and performing name matching on the plurality of records, record search means for searching for a plurality of target records having the same name; When searching for a second target record having the same personal information as any one of the personal information as seen from the first target record, after calling a self-function that assigns the same personal identifier as the first target record to the second target record, step by step, by recursively calling the self-function, when searching for a third target record having the same personal information as any one of the personal information as seen from the second target record, recursive search means for assigning the same personal identifier as the second target record to the third target record A search device characterized by comprising the same.

8. Regarding a search device having a memory database storing a plurality of records consisting of names and a plurality of personal information, in a name matching method for performing name matching on the plurality of records, the search device performs a first step of searching for a plurality of target records having the same name; When searching for a second target record having the same personal information as any one of the personal information as seen from the first target record, after calling a self-function that assigns the same personal identifier as the first target record to the second target record, step by step, by recursively calling the self-function, when searching for a third target record having the same personal information as any one of the personal information as seen from the second target record, a second step of assigning the same personal identifier as the second target record to the third target record A name matching method characterized by executing the same.

Citation Information

Patent Citations

  • JP1999-1191124A

  • Information processor, computer-assisted name identification method and program

    JP2010039535A

  • Information processor, information processing method and program

    JP2010122908A