最近二十分钟我一直在阅读有关非规范化的内容,但无法获得代码的简洁示例。
这是非规范化吗?
1.我们有一个规范化的数据库:
Table_1:customer_id(主键)国家市街房屋编号
Table_2:product_id(主键)customer_id(外键)product_storage_building
Table_3:product_id(外键)产品名称product_colorproduct_origin
但是,将所有三个表联接起来对我的查询来说花费的时间太长,因此我从Table_1
和Table_2
中创建了一个新表>
CREATE OR REPLACE TABLE Denormalized_Data AS
(
SELECT customer_id,
country,
city,
street,
house_number,
product_id,
product_storage_building
FROM Table_1
LEFT JOIN Table_2
ON Table_1.cusomter_id = Table_2.customer_id
)
然后按如下所示连接到Table_3
SELECT customer_id,
country,
city,
street,
house_number,
product_storage_building,
Denormalized_Data.product_id
product_name,
product_color,
FROM Denormalized_Data
LEFT JOIN Table_3
ON Denormalized_Data.product_id = Table_3.product_id
现在,这将使我的查询运行更快-可以将上述整个过程描述为非规范化吗?
谢谢
最近20分钟,我一直在阅读有关非规范化的信息,但无法获得代码的简洁示例。这是非规范化吗? 1.我们有一个规范化的数据库:表_1:customer_id(...
是,您正在显示一种非正规化。