JP2008203986A - Data management apparatus and program - Google Patents
Data management apparatus and program Download PDFInfo
- Publication number
- JP2008203986A JP2008203986A JP2007036708A JP2007036708A JP2008203986A JP 2008203986 A JP2008203986 A JP 2008203986A JP 2007036708 A JP2007036708 A JP 2007036708A JP 2007036708 A JP2007036708 A JP 2007036708A JP 2008203986 A JP2008203986 A JP 2008203986A
- Authority
- JP
- Japan
- Prior art keywords
- data
- information
- item
- flag
- same
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
Description
本発明はデータ管理装置及びプログラムに係り、特に、複数のデータ項目について各々情報が設定されて成る複数のデータの中に、一定の条件に合致するデータが存在しているか否かを判断するデータ管理装置、及び、コンピュータを前記データ管理装置として機能させるためのデータ管理プログラムに関する。 The present invention relates to a data management apparatus and program, and in particular, data for determining whether or not there is data that meets a certain condition among a plurality of data in which information is set for a plurality of data items. The present invention relates to a management apparatus and a data management program for causing a computer to function as the data management apparatus.
現在、データベースは広範に普及し、多種多様な業務で用いられている。データベースの管理に関する技術として、例えば特許文献1には、少なくとも氏名を含む各種の項目データから成る複数の名刺データを氏名データの五十音順に並び替えてRAMの編集領域に格納し直し、編集領域の先頭から順に隣接する2つの名刺データの氏名を比較し、一致するものがあった場合は該当データをRAMのチェック結果領域に格納する処理を繰り返すことで、氏名が重複する名刺データの有無を調べ、該当する名刺データが有った場合は表示部に一覧表示して内容確認表示や削除を行う技術が開示されている。
Currently, databases are widely used and used in a wide variety of businesses. As a technique related to database management, for example, in
また、特許文献2には、名刺レコードからIDと一部の項目データを抽出して簡易名刺レコードを作成し、作成した簡易名刺レコードを一定の条件で集めて簡易名刺データを複数生成し、その特徴毎に名前が付与された名刺箱に入れておき、簡易名刺データを利用することで、視覚的で判り易く操作性に優れた名刺データの管理(重複チェックを含む)を実現する技術が開示されている。 Also, in Patent Document 2, an ID and some item data are extracted from a business card record to create a simple business card record, the created simple business card records are collected under certain conditions, and a plurality of simple business card data are generated. Disclosed is a technology for managing business card data (including duplication check) that is visually easy to understand and easy to use by putting it in a business card box with a name for each feature and using simple business card data. Has been.
一方、特許文献3には、表計算処理において、表を構成する各セルに、そのセルを処理対象とするか否かを指示する属性情報を設定すると共に、各セルの属性情報に有効又は無効を示すフラグを設定しておき、或るセルの出力内容を求める際に、当該セルに参照先として設定されている他のセルの属性情報を参照し、属性情報のフラグの内容により前記他のセルを処理対象から除外するか否かを判定する技術が開示されている。
ところで、データベース(の編成やデータベースにアクセスするデータベース管理プログラムの処理内容等)は、一般に、当該データベースを利用する利用者の利用目的等に応じて設計・構築されるが、既に稼働しているデータベースに対し、当初は想定していなかった或る条件に合致するデータの有無を確認する必要が突発的に生ずることがある。 By the way, the database (the organization of the database and the processing contents of the database management program for accessing the database, etc.) is generally designed and constructed in accordance with the purpose of use of the user who uses the database. On the other hand, it may occur suddenly that it is necessary to confirm the presence or absence of data that meets a certain condition that was not initially assumed.
具体的には、例えば金融機関は個々の顧客に関する情報(例えば氏名又は名称や住所、電話番号等)を、個々の顧客を識別するための顧客IDと共にデータベース(顧客データベース)に登録・管理しており、通常の業務で顧客データベースにアクセスする際には、顧客ID等をキーとしてアクセス対象のデータを検索する処理が行われる。しかし、セグメント別の顧客データ処理・分析や、マーケティング、顧客宛のアンケートの実施、各種サービスの提案等の業務を行うにあたり、例えば「電話番号が同一で氏名又は名称が相違している」等の新たな条件に合致するデータの有無を確認する必要が生ずることがある。しかし、顧客データベースと共に設計・開発された管理プログラムには、上記の新たな条件に合致するデータを検索する機能は設けられていない。 Specifically, for example, a financial institution registers and manages information (for example, name or name, address, telephone number, etc.) about each customer in a database (customer database) together with a customer ID for identifying each customer. Therefore, when accessing the customer database in a normal operation, a process for searching access target data using a customer ID or the like as a key is performed. However, when performing operations such as customer data processing and analysis by segment, marketing, conducting questionnaires addressed to customers, and proposing various services, for example, “phone numbers are the same but names or names are different” It may be necessary to check for the presence of data that meets the new conditions. However, the management program designed and developed together with the customer database does not have a function for searching for data that meets the above new conditions.
このように、データベースに対して「第1のデータ項目の情報(の一部又は全体)が同一かつ第2のデータ項目の情報(の一部又は全体)が相違している」という条件に合致するデータの有無を確認する必要が生じたものの、既存のデータベース管理プログラムに、上記の新たな条件に合致するデータを検索する機能が設けられていない場合には、上記の新たな条件に合致するデータを検索するプログラムを開発した後に、開発したプログラムを用いて該当するデータの検索を行うことになる。 In this way, the database satisfies the condition that the information (part or whole) of the first data item is the same and the information (part or whole) of the second data item is different. If the existing database management program does not have a function to search for data that matches the above new conditions, the new conditions are met. After developing a program for retrieving data, the corresponding data is retrieved using the developed program.
しかし、上記の検索を実現するプログラムは、一般に、データベースから順にデータを読み出してワークメモリに貯えながら、読み出したデータをワークメモリに既に貯えられているデータと各々比較することを繰り返すことで、該当するデータを探す等のアルゴリズムが採用されるが、このようなアルゴリズムで動作するプログラムは規模が大きく、デバッグを含めて開発に時間が掛るので、特に結果を迅速に得たい場合に適していない。 However, the program for realizing the above search is generally applicable by repeatedly reading the data from the database and storing it in the work memory, repeatedly comparing the read data with the data already stored in the work memory. Although an algorithm such as searching for data to be used is employed, a program that operates with such an algorithm is large in scale and takes a long time to develop including debugging, and therefore is not suitable particularly when it is desired to obtain a result quickly.
なお、前述した特許文献1,2に記載の技術は、データベースに登録されているデータの重複の有無を確認する技術であり、また特許文献3に記載の技術は、表計算処理における処理対象のセルを切り替える技術であり、何れも、「第1のデータ項目の情報(の一部又は全体)が同一かつ第2のデータ項目の情報(の一部又は全体)が相違している」という条件に合致するデータの有無を確認したい場合には適用できない。
The techniques described in
本発明は上記事実を考慮して成されたもので、複数のデータ項目について各々情報が設定されて成る複数のデータの中に、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータが存在しているか否かを判断することを、簡易な処理の組み合わせで実現できるデータ管理装置及びデータ管理プログラムを得ることが目的である。 The present invention has been made in consideration of the above-described facts, and among a plurality of data in which information is set for each of a plurality of data items, part or all of the information of the first data item is the same and An object of the present invention is to provide a data management device and a data management program that can realize whether or not there is data in which part or all of the information of the two data items is different by a combination of simple processes. It is.
上記目的を達成するために請求項1記載の発明に係るデータ管理装置は、複数のデータ項目について各々情報が設定されて成る複数のデータを、前記複数のデータ項目のうちの第1の項目の情報に基づいてソートすることで、前記複数のデータを、前記第1のデータ項目の情報の一部又は全体が同一のデータで各々構成された複数のグループに分ける第1ソート手段と、前記第1ソート手段によるソートを経た前記複数のデータの各々に対し、前記複数のデータ項目のうちの第2のデータ項目の情報の一部又は全体が、同一のグループに属する特定データと相違しているか否かに応じて値の異なるフラグを各々設定するフラグ設定手段と、前記フラグ設定手段によって個々のデータに設定されたフラグの値に基づいて、個々のグループを構成するデータを個々のグループ内でソートする第2ソート手段と、前記第2ソート手段によるソートを経た前記個々のグループの先頭又は末尾のデータに設定されているフラグの値に基づいて、前記第1のデータ項目の情報の一部又は全体が同一かつ前記第2のデータ項目の情報の一部又は全体が相違しているデータの有無を判断する判断手段と、を含んで構成されている。 In order to achieve the above object, a data management device according to the first aspect of the present invention provides a plurality of pieces of data in which information is set for each of a plurality of data items, the first item among the plurality of data items. A first sorting means for sorting the plurality of data into a plurality of groups each including a part or all of the information of the first data item, each of which is composed of the same data, by sorting based on the information; Whether part or all of the information of the second data item of the plurality of data items differs from the specific data belonging to the same group for each of the plurality of data that has been sorted by one sort means Flag setting means for setting different flags depending on whether or not, and each group is configured based on the flag values set for individual data by the flag setting means Second sorting means for sorting the data within each group, and the first sorting means based on the value of the flag set in the first or last data of the individual group that has been sorted by the second sorting means. And determining means for determining whether or not there is data in which part or all of the information of the data item is the same and part or all of the information of the second data item is different.
請求項1記載の発明に係るデータ管理装置は、複数のデータ項目について各々情報が設定されて成る複数のデータを処理対象としており、第1ソート手段は、複数のデータ項目のうちの第1の項目の情報に基づいて複数のデータをソートすることで、複数のデータを、第1のデータ項目の情報の一部又は全体が同一のデータで各々構成された複数のグループに分ける。また、フラグ設定手段は、第1ソート手段によるソートを経た複数のデータの各々に対し、複数のデータ項目のうちの第2のデータ項目の情報の一部又は全体が、同一のグループに属する特定データと相違しているか否かに応じて値の異なるフラグを各々設定し、第2ソート手段は、フラグ設定手段によって個々のデータに設定されたフラグの値に基づいて、個々のグループを構成するデータを個々のグループ内でソートする。 The data management device according to the first aspect of the present invention is intended for processing a plurality of data each having information set for a plurality of data items, and the first sorting means is a first of the plurality of data items. By sorting the plurality of data based on the item information, the plurality of data is divided into a plurality of groups each composed of the same or part of the information of the first data item. In addition, the flag setting means specifies that part or all of the information of the second data item of the plurality of data items belongs to the same group for each of the plurality of data that has been sorted by the first sorting means. Flags having different values are set according to whether or not they differ from the data, and the second sorting means configures individual groups based on the flag values set for the individual data by the flag setting means. Sort data within individual groups.
これにより、個々のグループ内に、複数のデータ項目のうちの第2のデータ項目の情報の一部又は全体が、同一のグループに属する特定データと相違しているデータが存在していれば、当該データは、第2ソート手段によるソートによって個々のグループ内の先頭又は末尾へ移動する。このため、判断手段は、第2ソート手段によるソートを経た個々のグループの先頭又は末尾のデータに設定されているフラグの値に基づいて、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータの有無を判断する。 Thereby, in each group, if there is data in which part or all of the information of the second data item of the plurality of data items is different from the specific data belonging to the same group, The data moves to the head or tail in each group by sorting by the second sorting means. For this reason, the judging means uses the same or part of the information of the first data item based on the flag value set in the head or tail data of each group that has been sorted by the second sorting means. In addition, it is determined whether there is data in which part or all of the information of the second data item is different.
上記の第1ソート手段及び第2ソート手段によるソート、フラグ設定手段によるフラグ設定、判断手段による判断は、何れもごく簡単な処理であり、請求項1記載の発明によれば、複数のデータ項目について各々情報が設定されて成る複数のデータの中に、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータが存在しているか否かを判断することを、簡易な処理の組み合わせで実現することができる。そして、前述のように第1ソート手段及び第2ソート手段によるソート、フラグ設定手段によるフラグ設定、判断手段による判断が何れもごく簡単な処理であることから、第1ソート手段、フラグ設定手段、第2ソート手段及び判断手段を、各々コンピュータによって実行されるプログラムとして開発する場合にも、非常に短い期間で開発を完了させることができ、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータの有無を確認する必要が突発的に生じた等の場合にも、該当するデータの有無を迅速に確認することが可能となる。
The sorting by the first sorting means and the second sorting means, the flag setting by the flag setting means, and the judgment by the judging means are all simple processes. According to the invention of
なお、請求項1記載の発明において、判断手段が有無を判断するデータは、第1のデータ項目の情報の一部が同一の情報であってもよいし、第1のデータ項目の情報全体が同一の情報であってもよいが、判断手段が、第1のデータ項目の情報全体が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータの有無を判断する場合には、第1ソート手段を、例えば請求項2に記載したように、第1の項目の情報全体に基づいて複数のデータをソートすることで、複数のデータを、第1のデータ項目の情報全体が同一のデータで各々構成された複数のグループに分けるように構成すればよい。これにより、個々のグループが、第1のデータ項目の情報全体が同一のデータによって各々構成されることになり、フラグ設定手段によって設定されたフラグの値に基づいて、第2ソート手段が個々のグループを構成するデータを個々のグループ内でソートすることで、個々のグループの先頭又は末尾のデータに設定されているフラグの値が、第1のデータ項目の情報全体が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータの有無を表す値となるので、第1のデータ項目の情報全体が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータの有無を判断手段が判断することが可能となる。 In the first aspect of the invention, the data for which the determination means determines whether or not the information in the first data item may be the same information, or the entire information in the first data item may be the same. The same information may be used, but the determination means determines whether or not there is data in which the entire information of the first data item is the same and part or all of the information of the second data item is different. The first sorting means sorts a plurality of data based on the entire information of the first item, for example, as described in claim 2, thereby converting the plurality of data into the entire information of the first data item. May be divided into a plurality of groups each composed of the same data. As a result, the entire information of the first data item is composed of the same data, and the second sorting means is individually set based on the flag value set by the flag setting means. By sorting the data constituting the group within each group, the value of the flag set in the first or last data of each group is the same as the second data and the entire information of the first data item is the same. Since it is a value indicating the presence or absence of data in which part or all of the item information is different, the whole information of the first data item is the same and part or all of the information of the second data item is different. The determination means can determine the presence or absence of data.
また、請求項1記載の発明において、判断手段が、第1のデータ項目の情報の一部が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータの有無を判断する場合には、第1ソート手段を、例えば請求項3に記載したように、第1の項目の情報のうち一定位置に位置している一部の情報に基づいて複数のデータをソートすることで、複数のデータを、第1のデータ項目の情報の一部が同一のデータで各々構成された複数のグループに分けるように構成すればよい。これにより、個々のグループが、第1のデータ項目の情報の一部が同一のデータによって各々構成されることになり、フラグ設定手段によって設定されたフラグの値に基づいて、第2ソート手段が個々のグループを構成するデータを個々のグループ内でソートすることで、個々のグループの先頭又は末尾のデータに設定されているフラグの値が、第1のデータ項目の情報の一部が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータの有無を表す値となるので、第1のデータ項目の情報の一部が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータの有無を判断手段が判断することが可能となる。 In the first aspect of the present invention, the determination means determines whether there is data in which a part of the information of the first data item is the same and a part or the whole of the information of the second data item is different. In this case, the first sorting means sorts a plurality of data based on a part of information located at a certain position among the information of the first item, for example, as described in claim 3. The plurality of data may be configured so as to be divided into a plurality of groups each including a part of information of the first data item composed of the same data. As a result, each group is composed of a part of the information of the first data item by the same data, and the second sorting means is based on the flag value set by the flag setting means. By sorting the data constituting each group within each group, the flag value set in the data at the beginning or end of each group is the same as part of the information of the first data item and Since a part or all of the information of the second data item is a value indicating the presence or absence of data that is different, a part of the information of the first data item is the same and a part of the information of the second data item Alternatively, the determination means can determine the presence or absence of data that is entirely different.
また、請求項1記載の発明において、第1ソート手段は、例えば請求項4に記載したように、複数のデータを複数のグループに分けた後に、単一のデータから成るグループに属するデータを後段の処理対象(フラグ設定手段や第2ソート手段、判断手段の処理対象)から除外する処理を行うように構成することが好ましい。単一のデータから成るグループが存在していた場合、当該グループに属するデータは、第1のデータ項目の情報の一部又は全体が同一の他のデータが存在していない、すなわち、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータに該当しないと判断できるので、このデータを後段の処理対象から除外することで、後段の処理対象のデータの数が絞り込まれることになり、後段の処理の高速化を実現することができる。 Further, in the first aspect of the invention, the first sorting means, as described in the fourth aspect, for example, after dividing a plurality of data into a plurality of groups, It is preferable that the processing to be excluded from the processing target (the processing target of the flag setting unit, the second sorting unit, and the determination unit) is performed. When a group consisting of a single data exists, the data belonging to the group does not have any other data in which part or all of the information of the first data item is the same. Since it can be determined that the data item information is partly or entirely the same and the second data item information is partly or entirely different, it is possible to exclude this data from the subsequent processing target. As a result, the number of data to be processed in the subsequent stage is narrowed down, and the speed of the subsequent process can be increased.
更に、請求項1記載の発明において、判断手段が有無を判断するデータは、第2のデータ項目の情報の一部が同一の情報であってもよいし、第2のデータ項目の情報全体が同一の情報であってもよいが、判断手段が、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報全体が相違しているデータの有無を判断する場合には、フラグ設定手段を、例えば請求項5に記載したように、複数のデータの各々に対し、第2のデータ項目の情報全体を特定データと比較し、比較結果に応じてフラグを設定するように構成すればよい。これにより、フラグ設定手段によって設定されたフラグの値に基づいて、第2ソート手段が個々のグループを構成するデータを個々のグループ内でソートすることにより、個々のグループの先頭又は末尾のデータに設定されているフラグの値が、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報全体が相違しているデータの有無を表す値となるので、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報全体が相違しているデータの有無を判断手段が判断することが可能となる。 Further, in the first aspect of the invention, the data for which the determination means determines the presence or absence of the second data item may be the same information, or the entire information of the second data item may be the same. The same information may be used, but the determination means determines whether or not there is data in which part or all of the information of the first data item is the same and the entire information of the second data item is different. For example, as described in claim 5, the flag setting unit compares the entire information of the second data item with the specific data for each of the plurality of data, and sets the flag according to the comparison result. What is necessary is just to comprise. As a result, the second sorting means sorts the data constituting each group within each group based on the flag value set by the flag setting means, so that the first or last data of each group is obtained. Since the value of the set flag is a value indicating the presence or absence of data in which a part or the whole of the information of the first data item is the same and the whole information of the second data item is different, the first data item The determination means can determine whether or not there is data in which part or all of the information of the data item is the same and the entire information of the second data item is different.
また、請求項1記載の発明において、判断手段が、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報の一部が相違しているデータの有無を判断する場合には、フラグ設定手段は、例えば請求項6にも記載したように、複数のデータの各々に対し、第2のデータ項目の情報のうち一定位置に位置している一部の情報を特定データと比較し、比較結果に応じてフラグを設定するように構成すればよい。これにより、フラグ設定手段によって設定されたフラグの値に基づいて、第2ソート手段が個々のグループを構成するデータを個々のグループ内でソートすることにより、個々のグループの先頭又は末尾のデータに設定されているフラグの値が、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報の一部が相違しているデータの有無を表す値となるので、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報の一部が相違しているデータの有無を判断手段が判断することが可能となる。 In the first aspect of the present invention, the determination means determines whether or not there is data in which part or all of the information of the first data item is the same and part of the information of the second data item is different. In this case, for example, as described in claim 6, the flag setting unit specifies a part of information located at a certain position among the information of the second data item for each of the plurality of data. What is necessary is just to comprise so that a flag may be set according to a comparison result compared with data. As a result, the second sorting means sorts the data constituting each group within each group based on the flag value set by the flag setting means, so that the first or last data of each group is obtained. Since the value of the set flag is a value indicating the presence or absence of data in which part or all of the information of the first data item is the same and part of the information of the second data item is different, The determination means can determine whether or not there is data in which part or all of the information of one data item is the same and part of the information of the second data item is different.
また、請求項1記載の発明において、フラグ設定手段は、例えば請求項7に記載したように、個々のグループの特定データに対しては、第2のデータ項目の情報の一部又は全体が特定データと同一のデータに前記フラグとして設定する値と同一の値(すなわち、第2のデータ項目の情報の一部又は全体が特定データと相違しているデータに前記フラグとして設定する値と異なる値)を、フラグとして無条件に設定するように構成することができる。 In the first aspect of the invention, the flag setting means may specify a part or all of the information of the second data item for the specific data of each group as described in, for example, the seventh aspect. The same value as the value set as the flag in the same data as the data (that is, a value different from the value set as the flag in the data in which part or all of the information of the second data item is different from the specific data) ) Can be configured unconditionally as a flag.
請求項8記載の発明に係るデータ管理プログラムは、コンピュータを、複数のデータ項目について各々情報が設定されて成る複数のデータを、前記複数のデータ項目のうちの第1の項目の情報に基づいてソートすることで、前記複数のデータを、前記第1のデータ項目の情報の一部又は全体が同一のデータで各々構成された複数のグループに分ける第1ソート手段、前記第1ソート手段によるソートを経た前記複数のデータの各々に対し、前記複数のデータ項目のうちの第2のデータ項目の情報の一部又は全体が、同一のグループに属する特定のデータと相違しているか否かに応じて値の異なるフラグを各々設定するフラグ設定手段、前記フラグ設定手段によって個々のデータに設定されたフラグの値に基づいて、個々のグループを構成するデータを個々のグループ内でソートする第2ソート手段、及び、前記第2ソート手段によるソートを経た前記個々のグループの先頭又は末尾のデータに設定されているフラグの値に基づいて、前記第1のデータ項目の情報の一部又は全体が同一かつ前記第2のデータ項目の情報の一部又は全体が相違しているデータの有無を判断する判断手段として機能させる。 According to an eighth aspect of the present invention, there is provided a data management program comprising: a computer, a plurality of pieces of data each having information set for a plurality of data items, based on information of a first item of the plurality of data items; Sorting by the first sorting means, the first sorting means for sorting the plurality of data into a plurality of groups, each of which includes a part or all of the information of the first data item, each composed of the same data For each of the plurality of data that has passed through, whether or not part or all of the information of the second data item of the plurality of data items is different from the specific data belonging to the same group Flag setting means for setting flags having different values respectively, and individual groups are configured based on the flag values set in the individual data by the flag setting means. Second sorting means for sorting the data within each group, and based on the value of the flag set in the first or last data of the individual group that has been sorted by the second sorting means, It functions as a determination means for determining whether or not there is data in which part or all of the information of one data item is the same and part or all of the information of the second data item is different.
請求項8記載の発明に係るデータ管理プログラムは、コンピュータを、上記の第1ソート手段、フラグ設定手段、第2ソート手段及び判断手段として機能させるためのプログラムであるので、コンピュータが請求項8記載の発明に係るデータ管理プログラムを実行することで、コンピュータが請求項1に記載のデータ管理装置として機能することになり、請求項1記載の発明と同様に、複数のデータ項目について各々情報が設定されて成る複数のデータの中に、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータが存在しているか否かを判断することを、簡易な処理の組み合わせで実現することができる。
The data management program according to the invention described in claim 8 is a program for causing a computer to function as the first sort means, flag setting means, second sort means, and determination means. By executing the data management program according to the present invention, the computer functions as the data management device according to
以上説明したように本発明は、複数のデータ項目について各々情報が設定されて成る複数のデータを、第1の項目の情報に基づいてソートすることで、複数のデータを、第1のデータ項目の情報の一部又は全体が同一のデータで各々構成された複数のグループに分け、複数のデータの各々に対し、第2のデータ項目の情報の一部又は全体が、同一のグループに属する特定データと相違しているか否かに応じて値の異なるフラグを各々設定し、個々のデータに設定されたフラグの値に基づいて、個々のグループを構成するデータを個々のグループ内でソートし、前記個々のグループの先頭又は末尾のデータに設定されているフラグの値に基づいて、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータの有無を判断するので、複数のデータ項目について各々情報が設定されて成る複数のデータの中に、第1のデータ項目の情報の一部又は全体が同一かつ第2のデータ項目の情報の一部又は全体が相違しているデータが存在しているか否かを判断することを、簡易な処理の組み合わせで実現できる、という優れた効果を有する。 As described above, the present invention sorts a plurality of pieces of data in which information is set for a plurality of data items based on the information of the first item, so that the plurality of pieces of data are converted into the first data item. A part or all of the information is divided into a plurality of groups each composed of the same data, and for each of the plurality of data, a part or all of the information of the second data item belongs to the same group Set different flags with different values depending on whether they differ from the data, sort the data that make up each group within each group based on the flag value set for each data, Based on the value of the flag set in the head or tail data of each individual group, part or whole of the information of the first data item is the same and part or whole of the information of the second data item is phase Since the presence or absence of the data is determined, the second data item in which a part or all of the information of the first data item is the same among the plurality of data in which information is set for each of the plurality of data items. It has an excellent effect that it can be realized by a combination of simple processes to determine whether or not there is data in which part or all of the information is different.
以下、図面を参照して本発明の実施形態の一例を詳細に説明する。図1には本実施形態に係る、特定金融機関に設けられたコンピュータ・システム10が示されている。コンピュータ・システム10は、特定金融機関の情報センタ等に設置されたホスト・コンピュータ12と、特定金融機関内に構築されたコンピュータ・ネットワーク18を含んで構成されている。なお、ホスト・コンピュータ12は請求項8に記載のコンピュータに対応しており、後述するストレージ14と共に本発明に係るデータ管理装置に対応している。
Hereinafter, an example of an embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 shows a
ホスト・コンピュータ12は汎用の大型コンピュータから成り、CPU12A、RAM等から成るメモリ12B、磁気ディスク等から成る不揮発性の記憶部12C、ネットワークインタフェース(I/F)部12Dを備えている。ホスト・コンピュータ12は、ネットワークI/F部12Dに接続された通信回線を介してコンピュータ・ネットワーク18(詳しくはネットワーク18内のブランチ・サーバ20)に接続されている。また、ホスト・コンピュータ12には、大容量の磁気ディスク等から成り顧客情報データベース(顧客情報DB)を記憶するための記憶領域が設けられたストレージ14と、セットされたMT(磁気テープ)15に対して情報の読み出しや書き込みを行うMT装置16が各々接続されている。また、ホスト・コンピュータ12の記憶部12Cには、ホスト・コンピュータ12のCPU12Aによって顧客情報DB操作処理を行うための顧客情報DB操作プログラムと、ホスト・コンピュータ12のCPU12Aによってデータ抽出処理を行うためのデータ抽出プログラムが各々記憶されている。なお、上記各プログラムのうち、データ抽出プログラムは請求項8に記載のデータ管理プログラムに対応している。
The
一方、コンピュータ・ネットワーク18は、特定金融機関の各支店に各々設置されたブランチ・サーバ20(PC、ワークステーション、大型コンピュータの何れでもよい)が通信回線20を介して互いに接続されて構成されており、個々のブランチ・サーバ20には、個々のブランチ・サーバ20と同一の支店に設置された複数台のATM(Automatic Teller Machine:現金自動預け払い機)22及び複数台の営業店端末(金融機関の従業員が操作するための端末)24が各々接続されている。ATM22には、特定金融機関に口座を開設している顧客が所持しているキャッシュカードを装填可能で、装填されたキャッシュカードに磁気的に記録された情報を読み取り可能なカードリーダが取り付けられており、営業店端末24には、特定金融機関に口座を開設している顧客が所持している通帳を装填可能で、装填された通帳に磁気的に記録された情報を読み取り可能で、且つ任意の情報を通帳に記録することも可能な記帳機が取り付けられている。
On the other hand, the
次に本実施形態の作用を説明する。本実施形態に係る顧客情報DBは、特定金融機関の個々の顧客に関する情報を登録・管理するためのデータベースであり、単一の顧客の顧客情報として、顧客名や電話番号、住所、顧客が特定金融機関に開設している全ての口座の種別、支店番号、口座番号等の情報が顧客IDと対応付けられて単一のレコードに各々登録される。本実施形態に係る特定金融機関では、通常の業務の遂行に伴い、顧客情報DBに対して顧客情報の登録、読み出し、更新等のアクセスを行う必要が生ずるが、通常業務での顧客情報DBに対するアクセスは、ホスト・コンピュータ12によって顧客情報DB操作プログラムが実行されることで実現される。
Next, the operation of this embodiment will be described. The customer information DB according to the present embodiment is a database for registering and managing information related to individual customers of a specific financial institution. As customer information of a single customer, the customer name, telephone number, address, and customer are specified. Information such as the types, branch numbers, and account numbers of all accounts opened in financial institutions is registered in a single record in association with customer IDs. In the specific financial institution according to the present embodiment, it is necessary to access the customer information DB for registration, reading, updating, etc. with the execution of the normal business. Access is realized by executing a customer information DB operation program by the
具体的には、例えば新規顧客によって特定金融機関の口座開設が指示されたり、特定金融機関に既に口座を開設している顧客によって別口座の開設が指示されたり、顧客から住所や電話番号等の変更が通知された場合、顧客情報DBへのアクセスを要求する電文がATM22又は営業店端末24から送信される。この電文がコンピュータ・ネットワーク18やブランチ・サーバ20を経由してホスト・コンピュータ12で受信されると、顧客情報DB操作プログラムがCPU12Aによって実行され、顧客情報DBに対して要求されたアクセスを行う(顧客情報DB操作処理)。なお、要求されたアクセスが顧客情報DBに対する顧客情報の新規登録以外(読み出しや更新等)であれば、ATM22や営業店端末24から受信する電文にアクセス対象の顧客IDが設定されているので、顧客情報DB操作処理では、電文に設定されている顧客IDをキーとして顧客情報DBを検索することで、アクセス対象の顧客情報を顧客情報DBから抽出した後に、要求されたアクセスを行う。そして、要求されたアクセスが完了すると、要求元のATM22又は営業店端末24へ応答(電文)を送信する。
Specifically, for example, a new customer is instructed to open an account with a specific financial institution, a customer who has already opened an account with a specific financial institution is instructed to open another account, or a customer has an address, telephone number, etc. When the change is notified, a message requesting access to the customer information DB is transmitted from the ATM 22 or the
ところで、特定金融機関では、セグメント別の顧客データ処理・分析や、マーケティング、顧客宛のアンケートの実施、各種サービスの提案等の業務を行うにあたって急遽、顧客情報DBから「電話番号が同一で顧客名が相違している顧客情報」を抽出する必要が生じた。しかし、特定金融機関における通常業務では上記の条件に合致する顧客情報を顧客情報DBから抽出する必要はなく、顧客情報DB及び顧客情報DB操作プログラムの設計開発時には、顧客情報DBに対して上記の条件に合致する顧客情報を検索・抽出することを想定していなかったため、顧客情報DB操作プログラムには、上記の条件に合致する顧客情報を検索する機能は設けられていない。このため、特定金融機関では、顧客情報DBに対して上記の条件に合致する顧客情報を検索・抽出するために顧客情報抽出プログラムを開発した。以下、ホスト・コンピュータ12のCPU12Aによって顧客情報抽出プログラムが実行されることで実現される顧客情報抽出処理について、図2を参照して説明する。
By the way, in a specific financial institution, when performing business such as customer data processing and analysis by segment, marketing, conducting questionnaires addressed to customers, proposals for various services, etc. Need to extract "customer information". However, it is not necessary to extract customer information that meets the above conditions from the customer information DB in normal operations at a specific financial institution. When designing and developing the customer information DB and the customer information DB operation program, the customer information DB Since it is not assumed that customer information that matches the conditions is searched / extracted, the customer information DB operation program is not provided with a function for searching for customer information that meets the above conditions. For this reason, a specific financial institution has developed a customer information extraction program in order to search and extract customer information that matches the above conditions from the customer information DB. Hereinafter, customer information extraction processing realized by executing the customer information extraction program by the
顧客情報抽出処理では、まずステップ50において、顧客情報DBの全てのレコードをストレージ14からメモリ12Bに順次読み出すと共に、読み出した各レコードを電話番号(第1キー:本発明に係る第1のデータ項目に相当)及び顧客名(第2キー:本発明に係る第2のデータ項目に相当)に基づいてソートすることで、各レコードを電話番号(の全体)が同一のレコードから成るグループにグループ化し、処理結果を第1中間データとして記憶部12Cに書き込む。図3(A)にも示すように、顧客情報DB内には複数の顧客情報(複数のレコード)が電話番号TELNO及び顧客名NAMEに関してランダムに配列されており、図3(A)に示す9個の顧客情報(9個のレコード)に対し、ステップ50で電話番号TELNOの昇順かつ顧客名NAMEの昇順にソートを行った場合、9個のレコードは、図3(B)に示すように、各々電話番号TELNO="1111","2222","3333","4444"のレコードから成る4個のグループにグループ化されることになる(図3では各グループの境界を太線で示している)。
In the customer information extraction process, first, in
なお、上記のステップ50は本発明に係る第1ソート手段(詳しくは請求項2に記載の第1ソート手段)に対応している。また、電話番号TELNOは本発明に係る第1の項目の情報に、顧客名NAMEは本発明に係る第2の項目の情報に各々対応している。また、ステップ50では電話番号(第1のデータ項目)及び顧客名(第2のデータ項目)に基づいてソートしているが、電話番号(第1のデータ項目)のみに基づいてソートするようにしてもよい。また、図3では図面を簡単にするために、各レコードの情報として電話番号TELNO及び顧客名NAME以外の図示を省略しているが、実際には各レコードに住所等の他の情報も付加されていることは言うまでもない。
The
次のステップ52では、ステップ50で記憶部12Cに書き込んだ第1中間データを記憶部12Cからメモリ12Bに順次読み出し、ステップ50の処理によって読み出した第1中間データ内に形成されている複数のグループのうち単一のレコードから成るグループを検索し、この検索によって抽出されたグループに属するレコードを除去する。そして、処理結果を第2中間データとして記憶部12Cに書き込む。
In the
例として、記憶手段12Cから読み出した第1中間データが、図3(B)に示すように、各々電話番号TELNO="1111","2222","3333","4444"のレコードから成る4個のグループが形成されたデータであった場合、これらのグループのうち単一のレコードから成るグループは電話番号TELNO="4444"のレコードから成るグループであるので、図3(C)にも示すように、当該グループに属するレコード(電話番号TELNO="4444"、顧客名NAME="かかかか"のレコード)が除去される(図3(C)では該当するレコードの出力対象情報O/P="×"となっているが、これは該当するレコードを第2中間データとして出力しないことを意味し、図3(D)にも示すように該当するレコードは中間データ上から除去されている)。 As an example, as shown in FIG. 3B, the first intermediate data read from the storage means 12C is composed of 4 records of telephone numbers TELNO = “1111”, “2222”, “3333”, “4444”, respectively. In the case of data in which a plurality of groups are formed, a group consisting of a single record among these groups is a group consisting of records of the telephone number TELNO = “4444”, and is also shown in FIG. In this way, the records belonging to the group (the telephone number TELNO = “4444”, the customer name NAME = “high / low” record) are removed (the output target information O / of the corresponding record in FIG. 3C). P = “×” means that the corresponding record is not output as the second intermediate data, and the corresponding record is removed from the intermediate data as shown in FIG. )
ステップ52で除去されたレコードは次のステップ54以降の処理の対象から除外されるので、ステップ52は請求項4に記載の第1ソート手段に対応している。また、レコードそのものを中間データから除去することに代えて、単一のレコードから成るグループに属するレコードに所定の情報を付加して中間データとして出力し、次のステップ54以降の処理において、中間データのうち所定の情報が付加されているレコードを処理対象から除外するようにしてもよい。
Since the record removed in
次のステップ54では、ステップ52で記憶部12Cに書き込んだ第2中間データを記憶部12Cからメモリ12Bに順次読み出し、読み出した第2中間データの各レコードに各々フラグを設定する。このフラグの設定は、個々のグループ毎に以下のようにして行われる。すなわち、第2中間データ内の個々のグループの先頭レコードに対してはフラグとして無条件に"1"を設定し、第2中間データ内の個々のグループの2番目以降の各レコードに対しては、同一グループの先頭レコードと顧客名NAME(の全体)を比較し、同一グループの先頭レコードと顧客名NAME(の全体)が同一であればフラグとして"1"を、同一グループの先頭レコードと顧客名NAME(の全体)が相違していればフラグとして"0"を各々設定する。そして、処理結果を第3中間データとして記憶部12Cに書き込む。
In the
例として、記憶手段12Cから読み出した第2中間データが、図3(D)に示すように、各々電話番号TELNO="1111","2222","3333"のレコードから成る3個のグループが形成されたデータであった場合、電話番号TELNO="1111"のグループについては、当該グループの先頭レコード(顧客名NAME="ああああ")にフラグFLGとして無条件に"1"が設定され、2番目のレコード(顧客名NAME="いいいい")は顧客名NAME(の全体)が先頭レコードと相違しているので、フラグFLGとして"0"が設定される。また、電話番号TELNO="2222"のグループについては、当該グループの先頭レコード(顧客名NAME="うううう")にフラグFLGとして無条件に"1"が設定され、2番目のレコード(顧客名NAME="うううう")は顧客名NAME(の全体)が先頭レコードと同一であるのでフラグFLGとして"1"が設定される。更に、電話番号TELNO="3333"のグループについては、当該グループの先頭レコード(顧客名NAME="ええええ")にフラグFLGとして無条件に"1"が設定され、2番目のレコード(顧客名NAME="ええええ")は顧客名NAME(の全体)が先頭レコードと同一であるのでフラグFLGとして"1"が設定され、3,4番目のレコード(何れも顧客名NAME="おおおお")は顧客名NAME(の全体)が先頭レコードと相違しているのでフラグFLGとして"0"が各々設定される。 As an example, as shown in FIG. 3D, the second intermediate data read from the storage means 12C includes three groups each consisting of records of telephone numbers TELNO = “1111”, “2222”, “3333”. In the case of the formed data, for the group with the telephone number TELNO = “1111”, “1” is unconditionally set as the flag FLG in the first record of the group (customer name NAME = “Oh Ah”). Since the first record (customer name NAME = “good”) is different from the first record in customer name NAME (entire), “0” is set as the flag FLG. For the group with the telephone number TELNO = "2222", "1" is unconditionally set as the flag FLG in the first record (customer name NAME = "Uu Uu") of the group, and the second record (customer name) NAME = “Uu Uu”), since the customer name NAME (the whole) is the same as the first record, “1” is set as the flag FLG. Furthermore, for the group with the telephone number TELNO = “3333”, “1” is unconditionally set as the flag FLG in the first record (customer name NAME = “yeah yeah”) of the group, and the second record (customer name) Since the customer name NAME (whole) is the same as the first record in NAME = “Yes yeah”), the flag FLG is set to “1”, and the third and fourth records (both customer names NAME = “Oh”) ) Is different from the first record in the customer name NAME (whole), so “0” is set as the flag FLG.
上記のステップ54は本発明に係るフラグ設定手段(詳しくは請求項5及び請求項7に記載のフラグ設定手段)に対応している。なお、上記では個々のグループの先頭レコード、及び、個々のグループの2番目以降のレコードのうち同一グループの先頭レコードと顧客名NAME(の全体)が同一のレコードに対してはフラグとして"1"を設定し、個々のグループの2番目以降のレコードのうち同一グループの先頭レコードと顧客名NAME(の全体)が相違しているレコードに対してはフラグとして"0"を設定しているが、設定するフラグの値は上記で別の値を設定したレコードを区別可能な値であればよく、例えば値を逆に設定してもよいし、"0","1"以外の別の値を用いてもよい。
The
次のステップ56では、ステップ54で記憶部12Cに書き込んだ第3中間データを記憶部12Cからメモリ12Bに順次読み出し、読み出した第3中間データの個々のグループ内を、ステップ54で設定したフラグの値の昇順にソートする。そして、処理結果を第4中間データとして記憶部12Cに書き込む。例えば、記憶手段12Cから読み出した第3中間データが図3(D)に示すような内容であった場合、個々のグループ内をフラグの値の昇順にソートすることで、図3(E)に示すように、電話番号TELNO="1111"のグループについては、フラグFLGとして"0"が設定された顧客名NAME="いいいい"のレコード(図3(D)において、当該グループの2番目に位置しているレコード)が先頭レコードとなり、電話番号TELNO="3333"のグループについては、フラグFLGとして"0"が設定された顧客名NAME="おおおお"の2個のレコード(図3(D)において、当該グループの3番目及び4番目に位置しているレコード)が各々先頭レコード、2番目のレコードとなる。
In the
上記のステップ56は本発明に係る第2ソート手段に対応している。なお、上記では個々のグループ内をフラグの値の昇順にソートしているが、個々のグループ内をフラグの値の降順にソートするようにしてもよい(この場合、次のステップ58において、個々のグループの末尾のレコードに設定されているフラグの値に基づいて、個々のグループを出力対象とするか否かを判断するようにすればよい)。
また、ステップ58では、ステップ56で記憶部12Cに書き込んだ第4中間データを記憶部12Cからメモリ12Bに順次読み出し、読み出した第4中間データにおいて、個々のグループの先頭レコードに設定されているフラグの値に基づいて、個々のグループを出力対象とするか否かを判断する。すなわち、或るグループの先頭レコードに設定されているフラグの値が"1"の場合、このグループ内には、フラグの値が"0"のレコード、すなわち同一グループ内の他のレコードと顧客名NAMEが相違しているレコードが存在していないと判断できるので、このグループに属する各レコードを非出力対象に設定する。一方、或るグループの先頭レコードに設定されているフラグの値が"0"の場合、このグループ内には、同一グループ内の他のレコードと顧客名NAMEが相違しているレコードが混在していると判断できるので、このグループに属する各レコードを出力対象に設定する。そして、第4中間データのうち、出力対象に設定したグループのレコードのみを出力データとして、MT装置16を介してMT15に書き込み、顧客情報抽出処理を終了する。
In
例えば、記憶手段12Cから読み出した第4中間データが図3(E)に示すような内容であった場合、電話番号TELNO="1111"のグループについては先頭レコードにフラグFLGとして"0"が設定されていることで、図3(F)に示すように、当該グループに属する全レコード(2個のレコード)が出力対象に設定され(出力対象情報O/P="○"に設定され)、電話番号TELNO="2222"のグループについては先頭レコードにフラグFLGとして"1"が設定されていることで、当該グループに属する全レコード(2個のレコード)が非出力対象に設定され(出力対象情報O/P="×"に設定され)、電話番号TELNO="3333"のグループについては先頭レコードにフラグFLGとして"0"が設定されていることで、当該グループに属する全レコード(4個のレコード)が出力対象に設定される(出力対象情報O/P="○"に設定される)。そして、出力対象に設定された(出力対象情報O/P="○"に設定された)レコードのみが出力データとしてMT15に書き込まれる。なお、出力データはMT15以外の他の媒体へ出力するようにしてもよいことは言うまでもない。
For example, when the fourth intermediate data read from the storage means 12C has the contents as shown in FIG. 3E, for the group with the telephone number TELNO = "1111", "0" is set as the flag FLG in the first record. By doing so, as shown in FIG. 3 (F), all records (two records) belonging to the group are set as output targets (output target information O / P = “O” is set), For the group with the telephone number TELNO = "2222", all records belonging to the group (2 records) are set as non-output targets because the flag FLG is set to "1" in the first record (output target) Information O / P = “×”), and for the group with the telephone number TELNO = “3333”, “0” is set as the flag FLG in the first record, so all the records belonging to the group (4 records) Records) are set as output targets (output) Force target information O / P = “O”). Only the record set as the output target (output target information O / P = “◯”) is written in the
これにより、顧客情報DBに登録されている各レコード(各顧客情報)のうち、顧客情報抽出処理における抽出対象である、「電話番号TELNOが同一で顧客名NAMEが相違している顧客情報(レコード)」が混在しているグループのレコードのみが、出力データとしてMT15に書き込まれることになる。上述した顧客情報抽出処理の各ステップは何れもごく簡単な処理であり、特にステップ50,56におけるソートはデータ処理で多用される定型処理であるので、既存のプログラムを流用できる可能性が非常に高く、顧客情報抽出処理を実現する顧客情報抽出プログラムは、非常に短い期間で開発を完了させることができる。従って、上記で説明したように「電話番号TELNOが同一で顧客名NAMEが相違している顧客情報(レコード)」を抽出する場合のみならず、本発明に係るアルゴリズム(顧客情報抽出処理のアルゴリズム)を利用可能な条件に合致するデータを抽出する場合にも、該当するデータの有無を迅速に確認したり、該当するデータを抽出することができる。
As a result, among the records (each customer information) registered in the customer information DB, “customer information (records with the same telephone number TELNO and different customer names NAME), which is the extraction target in the customer information extraction process. Only the records in the group in which “)” are mixed are written in the
なお、上記では本発明に係る第1のデータ項目として電話番号TELNOを、第2のデータ項目として顧客名NAMEを適用した態様を説明したが、これに限定されるものではなく、例えば第1のデータ項目として住所を、第2のデータ項目として支店番号を適用する等のように、第1及び第2のデータ項目としては任意の情報を適用可能である。また、上記では処理対象のデータとして顧客情報DBに登録されている顧客情報を例に説明したが、これに限定されるものでもなく、任意のデータを処理対象とすることが可能である。また、上記では特定の条件に合致するデータの抽出を行う契機として、セグメント別の顧客データ処理・分析や、マーケティング、顧客宛のアンケートの実施、各種サービスの提案等の業務を例に説明したが、本発明の用途がこれに限定されるものでもないことは言うまでもない。 In addition, although the aspect which applied telephone number TELNO as a 1st data item which concerns on this invention above, and applied customer name NAME as a 2nd data item was demonstrated, it is not limited to this, For example, it is 1st Arbitrary information can be applied as the first and second data items, such as applying an address as a data item and a branch number as a second data item. In the above description, customer information registered in the customer information DB as data to be processed has been described as an example. However, the present invention is not limited to this, and arbitrary data can be processed. In addition, in the above, as an opportunity to extract data that matches a specific condition, the explanation was given by taking as an example the operations such as customer data processing and analysis by segment, marketing, conducting questionnaires addressed to customers, proposals for various services, etc. Needless to say, the application of the present invention is not limited to this.
また、上記では第1のデータ項目としての電話番号TELNO全体が同一かつ第2のデータ項目としての顧客名NAME全体が相違しているデータ(顧客情報)の有無の確認・抽出を例に説明したが、本発明はこれに限定されるものではなく、第1のデータ項目の情報の一部が同一のデータを対象としてもよい。これは、第1の項目の情報に基づくソート(図2におけるステップ50)において、第1の項目の情報のうちの一部の情報のみを比較してソート(及びグループ化)を行うことで実現できる。具体的には、例えば第1のデータ項目として住所を適用した態様において、住所のうち町名までの情報を比較して(番地等の情報を比較対象から除外して)ソート(及びグループ化)を行う。この場合、住所のうち少なくとも町名迄が同一のデータ毎にグループを形成することができる。上記態様は請求項3記載の発明に対応している。また、第2のデータ項目の情報の一部が相違するデータを対象としてもよい。これは、第2のデータ項目の情報に基づくフラグ設定(図2におけるステップ54)において、第2の項目の情報のうちの一部の情報のみを比較し、比較結果に応じてフラグを設定することで実現できる。具体的には、例えば第2のデータ項目として顧客名を適用した態様において、顧客名のうち苗字のみを比較して(名前を比較対象から除外して)フラグを設定する。この場合、個々のグループ内でフラグの値に基づいてデータをソートした後に、個々のグループ内の先頭又は末尾のデータに設定されているフラグの値を参照することで、各グループ内に顧客名のうちの少なくとも苗字が相違するデータが混在しているか否かを判断することができる。上記態様は請求項6記載の発明に対応している。
In addition, the above description has been made by taking as an example confirmation / extraction of the presence / absence of data (customer information) in which the entire telephone number TELNO as the first data item is the same and the entire customer name NAME as the second data item is different. However, the present invention is not limited to this, and data having a part of information of the first data item may be the same. This is realized by sorting (and grouping) by comparing only a part of the information of the first item in the sorting based on the information of the first item (
また、上記では顧客情報DBから読み出した各レコードに対し、ステップ50で電話番号TELNO及び顧客名NAMEに基づいてソートすることでグループ化した後に、ステップ52において、単一のレコードから成るグループを検索し、該当するグループ(に属するレコード)を除去する態様を説明したが、これに限定されるものではなく、例えば該当するグループ(レコード)の数が比較的少数であることが予想される等の場合には、単一のレコードから成るグループの検索及び該当するグループ(に属するレコード)の除去を省略するようにしてもよい。
Further, in the above, after the records read from the customer information DB are grouped by sorting based on the telephone number TELNO and customer name NAME in
更に、上記では顧客情報DBから全レコードを読み出し、第1のデータ項目の情報に基づくソート(グループ化)やフラグFLGの設定、フラグFLGの値に基づく個々のグループ内のソート等の処理を経て、第1のデータ項目の情報が同一かつ第2のデータ項目の情報が相違しているレコードが混在しているグループに属する全レコードを出力データとして出力する態様を説明したが、この処理方式では、図3での図示は省略しているものの、各レコードに第1のデータ項目の情報及び第2のデータ項目の情報以外の他の情報(例えば住所等)も付加された状態で各処理を行っているので、各中間データのサイズが大きく、各処理を行う毎に中間データを記憶部12Cに書き込む必要が生ずる(なお、中間データを記憶部12Cに書き込む必要が有るか否かは、個々のレコードのサイズや数(処理対象のデータの規模)、メモリ12B等のリソースのサイズにも左右されるので、上記処理方式でも中間データを記憶部12Cに書き込まずに済む可能性もある)。
Further, in the above, all records are read from the customer information DB, and after processing such as sorting (grouping) based on the information of the first data item, setting of the flag FLG, sorting within individual groups based on the value of the flag FLG, etc. In the processing method, all records belonging to a group in which records having the same first data item information and different second data item information are mixed are described as output data. Although not shown in FIG. 3, each process is performed in a state where other information (for example, an address) other than the information of the first data item and the information of the second data item is added to each record. Therefore, the size of each intermediate data is large, and it is necessary to write the intermediate data to the
このため、リソースとして使用可能な記憶部12Cのサイズに制限がある等の場合には、顧客情報DBの各レコードから第1のデータ項目の情報及び第2のデータ項目の情報のみを抽出することで各レコードのインデックスを作成し、このインデックスに対して第1のデータ項目の情報に基づくソート(グループ化)、フラグFLGの設定、フラグFLGの値に基づく個々のグループ内のソート、第1のデータ項目の情報が同一かつ第2のデータ項目の情報が相違しているレコードの判断、の各処理を順に行った後に、前記判断の結果に基づいて第1のデータ項目の情報が同一かつ第2のデータ項目の情報が相違しているレコードの実データを顧客情報DBから順に読み出し、出力データとして出力するようにしてもよい。
For this reason, when the size of the
また、上記では第1のデータ項目及び第2のデータ項目として各々単一のデータ項目を適用した態様を説明したが、本発明はこれに限定されるものでもなく、第1のデータ項目及び第2のデータ項目の少なくとも一方が複数のデータ項目から構成されていてもよい。第1のデータ項目が複数のデータ項目から構成されている場合には、第1の項目の情報に基づくソート(図2におけるステップ50)において、第1のデータ項目を構成する複数のデータ項目に基づいてソートを行い、処理対象の複数のデータを、第1のデータ項目を構成する複数のデータ項目が各々同一のデータで構成された複数のグループに分けるようにすればよい。また、第2のデータ項目が複数のデータ項目から構成されている場合は、第2のデータ項目の情報に基づくフラグの設定(図2におけるステップ54)において、第2のデータ項目を構成する複数のデータ項目の情報を各々比較し、第2のデータ項目を構成する複数のデータ項目の情報が各々相違しているか否か(或いは、第2のデータ項目を構成する複数のデータ項目の情報のうちの少なくとも1つが相違しているか否か)に応じて値の異なるフラグを設定するようにすればよい。
Moreover, although the aspect which applied each single data item as a 1st data item and a 2nd data item was demonstrated above, this invention is not limited to this, A 1st data item and a 1st data item At least one of the two data items may be composed of a plurality of data items. When the first data item is composed of a plurality of data items, in the sorting based on the information of the first item (
また、上記では本発明に係るデータ管理プログラムに対応する顧客情報抽出プログラムが記憶部12Cに予め記憶されている態様を説明したが、本発明に係るデータ管理プログラムは、CD−ROMやDVD−ROM、或いはMT等の記録媒体に記録されている形態で提供することも可能である。
In the above description, the customer information extraction program corresponding to the data management program according to the present invention is stored in the
10 コンピュータ・システム
12 ホスト・コンピュータ
12A CPU
12B メモリ
12C 記憶部
14 ストレージ
15 MT
10
Claims (8)
前記第1ソート手段によるソートを経た前記複数のデータの各々に対し、前記複数のデータ項目のうちの第2のデータ項目の情報の一部又は全体が、同一のグループに属する特定データと相違しているか否かに応じて値の異なるフラグを各々設定するフラグ設定手段と、
前記フラグ設定手段によって個々のデータに設定されたフラグの値に基づいて、個々のグループを構成するデータを個々のグループ内でソートする第2ソート手段と、
前記第2ソート手段によるソートを経た前記個々のグループの先頭又は末尾のデータに設定されているフラグの値に基づいて、前記第1のデータ項目の情報の一部又は全体が同一かつ前記第2のデータ項目の情報の一部又は全体が相違しているデータの有無を判断する判断手段と、
を含むデータ管理装置。 By sorting a plurality of data each having information set for a plurality of data items based on information of a first item of the plurality of data items, the plurality of data are converted into the first data. A first sorting means for dividing a part or the whole of the item information into a plurality of groups each composed of the same data;
For each of the plurality of data that has been sorted by the first sorting means, part or all of the information of the second data item of the plurality of data items is different from the specific data belonging to the same group. Flag setting means for setting different flags depending on whether or not
Second sorting means for sorting the data constituting the individual groups within the individual groups based on the flag values set for the individual data by the flag setting means;
Based on the value of the flag set in the first or last data of the individual group that has been sorted by the second sorting means, part or all of the information of the first data item is the same and the second A determination means for determining the presence or absence of data in which some or all of the data item information is different;
Data management device including
複数のデータ項目について各々情報が設定されて成る複数のデータを、前記複数のデータ項目のうちの第1の項目の情報に基づいてソートすることで、前記複数のデータを、前記第1のデータ項目の情報の一部又は全体が同一のデータで各々構成された複数のグループに分ける第1ソート手段、
前記第1ソート手段によるソートを経た前記複数のデータの各々に対し、前記複数のデータ項目のうちの第2のデータ項目の情報の一部又は全体が、同一のグループに属する特定のデータと相違しているか否かに応じて値の異なるフラグを各々設定するフラグ設定手段、
前記フラグ設定手段によって個々のデータに設定されたフラグの値に基づいて、個々のグループを構成するデータを個々のグループ内でソートする第2ソート手段、
及び、前記第2ソート手段によるソートを経た前記個々のグループの先頭又は末尾のデータに設定されているフラグの値に基づいて、前記第1のデータ項目の情報の一部又は全体が同一かつ前記第2のデータ項目の情報の一部又は全体が相違しているデータの有無を判断する判断手段
として機能させるデータ管理プログラム。 Computer
By sorting a plurality of data each having information set for a plurality of data items based on information of a first item of the plurality of data items, the plurality of data are converted into the first data. A first sorting means for dividing a part or the whole of the item information into a plurality of groups each composed of the same data;
For each of the plurality of data that has been sorted by the first sorting means, part or all of the information of the second data item of the plurality of data items is different from the specific data belonging to the same group. Flag setting means for setting different flags depending on whether or not
Second sorting means for sorting the data constituting the individual groups within the individual groups based on the flag values set for the individual data by the flag setting means;
And based on the value of the flag set in the data at the beginning or end of the individual group that has been sorted by the second sorting means, part or all of the information of the first data item is the same and the A data management program that functions as a determination unit that determines whether there is data in which part or all of the information of the second data item is different.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007036708A JP4503031B2 (en) | 2007-02-16 | 2007-02-16 | Data management apparatus and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007036708A JP4503031B2 (en) | 2007-02-16 | 2007-02-16 | Data management apparatus and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008203986A true JP2008203986A (en) | 2008-09-04 |
JP4503031B2 JP4503031B2 (en) | 2010-07-14 |
Family
ID=39781463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007036708A Expired - Fee Related JP4503031B2 (en) | 2007-02-16 | 2007-02-16 | Data management apparatus and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4503031B2 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000285123A (en) * | 1999-03-30 | 2000-10-13 | Ricoh Co Ltd | Device and method for retrieving component information and computer readable storage medium recording program for computer to execute the same method |
JP2002189756A (en) * | 2000-12-21 | 2002-07-05 | Fujitsu Ltd | Method for generating list of retrieval result of relational database, retrieval device for relational database, and recording medium |
-
2007
- 2007-02-16 JP JP2007036708A patent/JP4503031B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000285123A (en) * | 1999-03-30 | 2000-10-13 | Ricoh Co Ltd | Device and method for retrieving component information and computer readable storage medium recording program for computer to execute the same method |
JP2002189756A (en) * | 2000-12-21 | 2002-07-05 | Fujitsu Ltd | Method for generating list of retrieval result of relational database, retrieval device for relational database, and recording medium |
Also Published As
Publication number | Publication date |
---|---|
JP4503031B2 (en) | 2010-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8719308B2 (en) | Method and system to process unstructured data | |
CN102498464B (en) | Automatically finding contextually related items of a task | |
US7870477B2 (en) | Method and system for portable data aggregation | |
US20130006996A1 (en) | Clustering E-Mails Using Collaborative Information | |
CN104731896A (en) | Data processing method and system | |
CN110109910A (en) | Data processing method and system, electronic equipment and computer readable storage medium | |
CN112328589B (en) | Electronic form data granulation and index standardization processing method | |
CN110389941A (en) | Database method of calibration, device, equipment and storage medium | |
CN113360676A (en) | Method and device for determining potential relation of enterprise based on knowledge graph | |
CN112418875B (en) | Cross-platform tax intelligent customer service corpus migration method and device | |
CN104123104B (en) | Daily record control system and method | |
CN101963993A (en) | Method for fast searching database sheet table record | |
CN107729330A (en) | The method and apparatus for obtaining data set | |
CN103425732A (en) | Electronic invoice data processing method | |
CN110287338B (en) | Industry hotspot determination method, device, equipment and medium | |
US9286349B2 (en) | Dynamic search system | |
JP4503031B2 (en) | Data management apparatus and program | |
CN102473176A (en) | Document data processing device | |
CN110941952A (en) | Method and device for perfecting audit analysis model | |
CN112632266B (en) | Data writing method and device, computer equipment and readable storage medium | |
CN105243479A (en) | Risk judgment method and data processing system | |
JP5690301B2 (en) | Forensic system, forensic method, and forensic program | |
US9323753B2 (en) | Method and device for representing digital documents for search applications | |
CN114996428A (en) | Information extraction method and device based on enterprise WeChat, electronic equipment and storage medium | |
CN106940698A (en) | A kind of dimension data processing method and processing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091124 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100108 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100413 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100420 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130430 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |