SQL 在两个表之间查看
SQL View between two tables
我的数据库中有两个 table,我想创建一个包含所有信息的视图。
其中一个 table 包含每个订单的详细信息,另一个 table 包含这些订单的一般内容。
这里是 table 的详细信息:
OrderRecords_table
OrderID|CustomerCode|Customer|Address|PickupLocation|TotalPrice|CreateTime
C00001 |AB001 |ABC Co. |CA | Store |5 |2015-01-01
C00002 |BC002 |BC Co. |CA | store |5.5 |2015-01-01
OrderDetails_table
OrderID|Company|ItemName|Amount|unitPrice|CreateTime
C00001 |ABC Co.|apple |1 |2 |2015-01-01 01:01:01
C00001 |ABC Co.|Orange |3 |3 |2015-01-01 01:01:01
C00002 |BC Co. |candy |5 |1 |2015-01-01 03:01:01
C00002 |BC Co. |pan |1 |2 |2015-01-01 03:01:01
C00002 |BC Co. |ruler |2 |2.5 |2015-01-01 03:01:01
是这样的,所以在OrderRecords上,orderID是唯一的,而orderDetails对每一个商品都有一条记录。
现在我正在创建一个需要来自两个 table 的详细信息的方法,如果我每次都尝试在 table 中尝试 Select 项目,那将会非常混乱,我想创建一个包含 table 两者详细信息的视图。
我希望它是这样的:
视图
OrderID|Company|CustomerCode|Address|ItemName|Amount|UnitPrice|CreateTime
C00001 |ABC Co.|AB001 |CA |apple |1 |2 |2015-01-01
C00001 |ABC Co.|AB001 |CA |orange |3 |3 |2015-01-01
C00002 |BC Co. |BC002 |CA |candy |5 |1 |2015-01-01
C00002 |BC Co. |BC002 |CA |pan |1 |2 |2015-01-01
C00002 |BC Co. |BC002 |CA |ruler |2 |2.5 |2015-01-01
创建这种视图的最佳方法是什么?谢谢
您可以使用联接:
CREATE VIEW v AS
SELECT orec.OrderID,
od.Company,
orec.CustomerCode,
orec.Address,
od.ItemName,
od.Amount,
od.unitPrice,
od.CreateTime
FROM OrderRecords orec
JOIN OrderDetails od ON orec.OrderId = od.OrderId
我的数据库中有两个 table,我想创建一个包含所有信息的视图。 其中一个 table 包含每个订单的详细信息,另一个 table 包含这些订单的一般内容。
这里是 table 的详细信息:
OrderRecords_table
OrderID|CustomerCode|Customer|Address|PickupLocation|TotalPrice|CreateTime
C00001 |AB001 |ABC Co. |CA | Store |5 |2015-01-01
C00002 |BC002 |BC Co. |CA | store |5.5 |2015-01-01
OrderDetails_table
OrderID|Company|ItemName|Amount|unitPrice|CreateTime
C00001 |ABC Co.|apple |1 |2 |2015-01-01 01:01:01
C00001 |ABC Co.|Orange |3 |3 |2015-01-01 01:01:01
C00002 |BC Co. |candy |5 |1 |2015-01-01 03:01:01
C00002 |BC Co. |pan |1 |2 |2015-01-01 03:01:01
C00002 |BC Co. |ruler |2 |2.5 |2015-01-01 03:01:01
是这样的,所以在OrderRecords上,orderID是唯一的,而orderDetails对每一个商品都有一条记录。
现在我正在创建一个需要来自两个 table 的详细信息的方法,如果我每次都尝试在 table 中尝试 Select 项目,那将会非常混乱,我想创建一个包含 table 两者详细信息的视图。
我希望它是这样的:
视图
OrderID|Company|CustomerCode|Address|ItemName|Amount|UnitPrice|CreateTime
C00001 |ABC Co.|AB001 |CA |apple |1 |2 |2015-01-01
C00001 |ABC Co.|AB001 |CA |orange |3 |3 |2015-01-01
C00002 |BC Co. |BC002 |CA |candy |5 |1 |2015-01-01
C00002 |BC Co. |BC002 |CA |pan |1 |2 |2015-01-01
C00002 |BC Co. |BC002 |CA |ruler |2 |2.5 |2015-01-01
创建这种视图的最佳方法是什么?谢谢
您可以使用联接:
CREATE VIEW v AS
SELECT orec.OrderID,
od.Company,
orec.CustomerCode,
orec.Address,
od.ItemName,
od.Amount,
od.unitPrice,
od.CreateTime
FROM OrderRecords orec
JOIN OrderDetails od ON orec.OrderId = od.OrderId