This option joins every table with equals signs, but when the line-item table has several rows (two or more kinds of products purchased), the reference count n for the Product table and the Unit price table is greater than the single reference to the Business partner table and the Business partner contact person table. The line-item table in Figure 2 is laid out for multiple rows, so the counts are not always equal.
○イ
正解Count, table by table, how many references are needed to issue one invoice. The business partner name in the addressee block is obtained by looking up the Business partner table once by the business partner code (the primary key). The address, job title, and phone number are obtained by looking up the Business partner contact person table once by (business partner code + department name). There is in principle one contact person per business partner, or one per department, so a single invoice involves only one contact record. On the other hand, the line-item table has as many rows as the kinds of products purchased; letting that count be n, the Product table is referenced n times to get the product names and the Unit price table n times to get the unit prices. Therefore Unit price table = Product table = n, and Business partner contact person table = Business partner table = 1; since at least one kind of product is purchased, n ≧ 1. Putting this together gives Unit price table = Product table ≧ Business partner contact person table = Business partner table, so イ is correct.
×Incorrectウ
This option states Unit price table ≧ Product table, but the product name comes from the Product table and the unit price from the Unit price table, each looked up once per line item, so the two counts are always the same (both n). Leaving room for a difference makes this an inaccurate statement of the relationship that must always hold.
×Incorrectエ
Besides the inaccurate Unit price table ≧ Product table, stating Business partner contact person table ≧ Business partner table is also wrong. The business partner name is looked up once in the Business partner table and the contact information once in the Business partner contact person table; one invoice has a single addressee, so the two counts are necessarily equal.
ここがポイント
When retrieving one record by its primary key counts as one reference, the number of references is determined by how many items of that table's information the invoice needs. The addressee-related tables (Business partner table, Business partner contact person table) supply one item per invoice, while the line-item-related tables (Product table, Unit price table) supply n items, the number of products.
In a normalized database, producing one business form requires joining and referencing several tables by their primary keys. The key point is to map each item to the table that holds it: product name = Product table, unit price = Unit price table, business partner name = Business partner table, address / job title / phone number = Business partner contact person table.