我有下表:
表名:stat
Region M07 M08 M09
---------------------
P1 0 1 0
P2 0 0 0
P3 2 0 0
P4 0 0 0
P5 0 0 0
P6 0 0 0
P7 9 0 3
我取消了stat表中包含数值的months列。获得的结果
---------------------
Region Month Qty
---------------------
P1 M07 0
P1 M08 1
P1 M09 0
P2 M07 0
P2 M08 0
P2 M09 0
解压是用这个代码完成的
select Region, month, qty FROM
(
SELECT Region, 'M07' AS month, M07 AS qty from STAT
UNION ALL
SELECT Region, 'M08' AS month, M08 AS qty from STAT
UNION ALL
SELECT Region, 'M09' AS month, M09 AS qty from STAT
)x
我现在需要向这个未插入的数据集中添加一个新列。例如,一个名为“profile”的列。我试着把代码写成
ALTER TABLE STAT
ADD COLUMN `Profile` CHAR(8) NOT NULL DEFAULT 'MI';
然后我尝试显示未初始化的数据集的结果和通过编写
SELECT * from STAT
但是,我现在看到新的列添加到原始数据集中,但是我看不到未插入的数据。我想看看未插入的数据和最后一个新的列添加。我假设我需要在代码的unpivot部分的某处编写alter表。如果能帮上点忙,我会很感激的?
1条答案
按热度按时间bvuwiixz1#
实际上,您需要创建一个新表来存储未归档的数据。这可以通过 Package 查询来实现
CREATE TABLE ... AS SELECT
声明。然后你可以做:
当然,还有: