如何在 SQL 中的物化视图左侧添加序列?
How can I add a sequence to the left of a materialized view in SQL?
我有一个物化视图如下:
|product_type|
--------------
shoes
clothing
electronics
..100's more
我想以一种让每种产品类型都有相应 ID 的方式创建视图。所以视图应该如下所示:
| ID | product_type|
--------------------
1 | shoes
2 | clothing
3 | electronics
100 | ..100's more
SQL 用于创建视图的是:
select distinct(product_type) from items
您可以使用 row_number()
:
select row_number() over (order by product_type) as my_id
但是,如果您需要每个 product_type
的唯一编号——随着时间的推移是 stable——我建议在“产品”中使用 identity
列类型”table.
对于你的具体例子,我建议:
select row_number() over (order by product_type), product_type
from items
group by product_type;
我想你需要不同的 product_type 然后你想要序列号。
使用以下查询:
Select product_type,
row_number() over (order by product_type) row_num
From (Select distinct product_type
From items) t
我有一个物化视图如下:
|product_type|
--------------
shoes
clothing
electronics
..100's more
我想以一种让每种产品类型都有相应 ID 的方式创建视图。所以视图应该如下所示:
| ID | product_type|
--------------------
1 | shoes
2 | clothing
3 | electronics
100 | ..100's more
SQL 用于创建视图的是:
select distinct(product_type) from items
您可以使用 row_number()
:
select row_number() over (order by product_type) as my_id
但是,如果您需要每个 product_type
的唯一编号——随着时间的推移是 stable——我建议在“产品”中使用 identity
列类型”table.
对于你的具体例子,我建议:
select row_number() over (order by product_type), product_type
from items
group by product_type;
我想你需要不同的 product_type 然后你想要序列号。
使用以下查询:
Select product_type,
row_number() over (order by product_type) row_num
From (Select distinct product_type
From items) t