答案 0 :(得分:1)
根据上面INNER JOIN
的数据,s会写成:
SELECT *
FROM Wines
INNER JOIN Carry ON Wines.wine_id = Carry.wine_id
请注意,Wines和Caries之间的关系图显示0到多(1..1 - 0 .. *)。另请注意,wine_id未列在Carry表列列表中,而是隐含在关系中。
接下来你想知道今天的价格(提示:由于承运表有price_start_date
和price_end_date
表示价格不固定,你需要使用这些字段):
WHERE price_start_date <= CURDATE() AND CURDATE() <= price_end_date
要价格低于15美元:
WHERE price_start_date <= CURDATE() AND CURDATE() <= price_end_date
AND price_on_carry < 15
问题1查询将如下所示(您需要添加相关的列名称):
SELECT *
FROM Wines
INNER JOIN Carry ON Wines.wine_id = Carry.wine_id
WHERE price_start_date <= CURDATE() AND CURDATE() <= price_end_date
AND price_on_carry < 15
AND Wines.color = 'Red'
注意:英语不是我的第一语言,所以我对“他们是否来自加拿大”感到困惑,特别是如果我们需要包含葡萄酒是否来自加拿大的信息。我以为我们不需要包含这些信息。