データベーススペシャリスト暗記無料で始める

無損失分解とは?むそんしつぶんかい

無損失分解とは、分解した表を自然結合すると元の関係が過不足なく復元できる分解。分解後の表に共通する属性が、少なくとも一方の表の超キー(候補キーを含む属性の集合)になっていれば無損失であることが保証される。正規化はこの条件を満たす割り方だけを選んで進める。

最終更新:2026-10-06

試験情報

データベーススペシャリスト試験の過去問では2回出題され、ほかに2問の解説で触れられています(2016年度〜2023年度)。

データベーススペシャリスト試験の頻出用語/午前II

別名:情報無損失分解、lossless join decomposition

この語が出る過去問を解く →

背景

表を割れば冗長は減るが、割り方を誤ると復元できなくなったり、元に無かった行が湧いて出たりする。正規化を「とにかく分ければよい」手続きにしないための歯止めとして、分解の可否を機械的に判定できる条件が置かれている。設計を任され始めた開発者がやりがちな「重複が気になるから列を別表へ移す」を、キーを見て止められるかどうかがこの試験で問われる。

具体例

受注(受注番号, 顧客番号, 顧客名, 受注日)を、受注(受注番号, 顧客番号, 受注日)と顧客(顧客番号, 顧客名)に分けると、共通属性の顧客番号が後者の主キーなので無損失。逆に(受注番号, 顧客名)と(顧客番号, 顧客名)に割ると、同姓同名がある限り復元できない。

試験での引っ掛け

共通属性がどちらの表でもキーでない分解をすると、結合したときに元に無い行(スプリアスタプル)が現れる。もう一つの定番は従属性保存との取り違えで、BCNFへの分解は無損失なものが必ず存在するが、関数従属を各表だけで検査できるとは限らない。「無損失なら安全」ではない。

関連用語

出た過去問

問題文で直接問われたものと、解説の中で触れられたものが含まれます。

解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。

この語が出る過去問を解く →

試験での特徴
  • 試験では2回出題(2016年度〜2023年度)
  • 分野:午前II
  • 共通属性がどちらの表でもキーでない分解をすると、結合したときに元に無い行(スプリアスタプル)が現れる。