我有一个表,它有像ID
,category
,type
,date
和Shop
这样的类别。我想创建一个新表,在那里我删除type
列。如果ID
,Category
,Date
和Shop
是相同的,那么我删除多行,只保留一行,并添加他们购买了多少物品的计数。如果ID
,category
,date
和shop
是相同的,但是category
不是,category
变成了水果/蔬菜,计数与购买的物品数量相加。我已经突出显示了我当前的表格和新表格的外观。但是我不确定如何创建这个新表格。
我从
CREATE TABLE SINGLE_ROW AS
SELECT ID, Category, Date, Shop
FROM customer_items
字符串
但我不知道怎么把table改装成我需要的样子。
| ID|类别|类型|日期|店|
| --|--|--|--|--|
| 1 |水果|苹果|23年1月2日|店铺3|
| 1 |水果|香蕉|23年1月2日|店铺3|
| 1 |水果|草莓|23年4月2日|店铺3|
| 2 |水果|苹果|15/2/23|店铺1|
| 2 |蔬菜|胡萝卜|15/2/23|店铺1|
| 3 |水果|香蕉|14/6/23|店铺5|
| 3 |水果|香蕉|14/6/23|店铺10|
| ID|类别|日期|店|计数|
| --|--|--|--|--|
| 1 |水果|23年1月2日|店铺3| 2 |
| 1 |水果|23年4月2日|店铺3| 1 |
| 2 |水果/蔬菜|15/2/23|店铺1| 2 |
| 3 |水果|14/6/23|店铺5| 1 |
| 3 |水果|14/6/23|店铺10| 1 |
1条答案
按热度按时间rqdpfwrv1#
您可以使用所谓的
REFRESH DEFERRED
MQT。当您完成编辑
customer_items
时,只需运行REFRESH TABLE
语句,以使Db2自动重新计算SINGLE_ROW
表,并根据其定义中的查询获得agg结果。如果需要,您也可以创建索引来加速
SINGLE_ROW
上的用户查询。x
的数据
| ID|类别|日期|店|计数|
| --|--|--|--|--|
| 1 |水果|23年1月2日|店铺3| 2 |
| 1 |水果|23年4月2日|店铺3| 1 |
| 2 |水果/蔬菜|15/2/23|店铺1| 2 |
| 3 |水果|14/6/23|店铺10| 1 |
| 3 |水果|14/6/23|店铺5| 1 |
fiddle