我有一个关于SQL查询的问题。我正在ASP.NET Visual Studio中构建原型网上商店。现在,我正在寻找解决方案来查看我的产品。我已经在MS Access中建立了一个数据库,它包含多个表。

对于我的问题而言重要的表格是:


产品
产品图片
摄影


Below you'll see the relations between the tables

对我来说,获取三种数据类型很重要:产品标题,价格和图像。
产品标题和价格在Product表中。图像在Foto表中。

因为一个产品可以有多个图片,所以它们之间存在N-M关系。因此,我必须将其拆分,是在Productfoto表中完成的。

因此它们之间的联系是:

product.artikelnummer -> productfoto.artikelnummer
productfoto.foto_id -> foto.foto_id


然后,我可以读取文件名(在数据库中:foto.bestandnaam

我创建了第一个内部联接,并在Access中对其进行了测试,这可行:

SELECT titel, prijs, foto_id
FROM Product
INNER JOIN Productfoto
ON product.artikelnummer = productfoto.artikelnummer


但是我需要另一个INNER JOIN,该如何创建呢?我猜是这样的(这会给我一个错误)

SELECT titel, prijs, bestandnaam
FROM Product
(( INNER JOIN Productfoto ON product.artikelnummer = productfoto.artikkelnummer )
INNER JOIN foto ON productfoto.foto_id = foto.foto_id)


谁能帮我?

最佳答案

这样的事情应该工作:

SELECT Product.titel, Product.prijs, Foto.bestandnaam FROM Product INNER JOIN
(Foto INNER JOIN Productfoto ON Foto.[foto_id] = Productfoto.[foto_id]) ON
Product.[artikelnummer] = Productfoto.[artikelnummer];

09-26 08:21