我是Postgresql和数据库的新手。我有下表Shop
Create table Shop(
id integer ,
Name varchar(50),
Adress varchar(50) )
我有第二个表产品
Create table Product(
id integer ,
Name varchar(50),
Price float)
如何在产品和商店之间创建一对一的关系?
答案 0 :(得分:0)
使用一个单独的表,称为联结表或联接表(不幸的是还有许多其他名称)
CREATE TABLE Products_in_shop (
shop_id INTEGER,
product_id INTEGER
)
然后,您可以JOIN
对其进行特定查询,例如:特定商店的产品:
SELECT p.Name
FROM Shop AS s
JOIN Products_in_shop AS pis ON pis.shop_id = s.id
JOIN Product AS p ON pis.product_id = p.id
WHERE s.Name = 'MyShop'