2 つの変数を含む単一の列を同じインデックスを持つ 2 つの列にピボット/再編成し、これらの変数の差を計算したいと考えています。
以下の表の定義は、2 つの異なる dataTypes がカテゴリ、countryID、および year によって識別されることを示しています。
CREATE TABLE IF NOT EXISTS Data (
dataID INT PRIMARY KEY AUTO_INCREMENT ,
category INT NOT NULL REFERENCES Categories (Category),
dataType INT NOT NULL,
countryID INT NOT NULL REFERENCES Countries (countryID),
year INT NOT NULL,
values DEC(20,2) NULL);
目標は、次の表に到達することです。
CREATE TABLE IF NOT EXISTS Data (
dataID INT PRIMARY KEY AUTO_INCREMENT ,
category INT NOT NULL REFERENCES Categories (Category),
countryID INT NOT NULL REFERENCES Countries (countryID),
year INT NOT NULL,
dataType1values DEC(20,2) NULL),
dataType2values DEC(20,2) NULL),
type1-type2values DEC(20,2) NULL);
100 以上の国、25 年、5000 以上のカテゴリがあります。かなりの調査にもかかわらず、(明らかに) 必要な自己結合を実装する効率的な方法に苦労しています。ご不明な点がございましたら、お知らせください。ありがとう!