在Access数据库中有两个表。日期选择
表一包含文章和表二包含价格。
所以文章是所有文章的描述和价格 表只包含一个文章编号,日期日期和价格。 如果价格发生变化,价格会增加一个新行。
价格有一个使用该价格的日期。
现在,我想这是有效的01月2012年 我用现在的价格我查询并添加and prsdat<#02/10/2012#
在查询的子查询价格。
以下是我已经有:
SELECT
Articles.ARTNR,
Articles.TXT,
Articles.ACTIVE,
Prices.PRICE,
Prices.PRSGR,
Prices.PRSDAT
FROM
Articles INNER JOIN Prices ON Articles.ARTNR = Prices.ARTNR
WHERE
(((Articles.ACTIVE)="Y") AND
((Prices.PRSGR)=0) AND
((Prices.PRSDAT)=
(SELECT
max(prsdat)
FROM
Prices as art
WHERE
art.artnr = Prices.artnr and prsdat<#02/10/2012#)))
ORDER BY
Articles.ARTNR;
现在选择回到文章,我没有这个选择 我以前用过看到,刚刚加入and prsdat<#01/10/2012#
。 结果现在是430篇文章,之前我只有约260.
返回的价格较旧,但我不确定日期格式。 在表中,我看到DD.MM.YYYY,在查询中我将使用MM/DD/YYYY或DD/MM/YYYY?
此选择的正确形式是什么?
'(Prices.PRSGR)= 0'是什么意思?您至少应该在子查询中复制该子句。 – wildplasser 2013-03-16 14:03:13
如果你自己运行子查询,它会返回什么? – 2013-03-16 14:09:21
@wildplasser有价格组,我对价格组0有兴趣。 – 2013-03-16 14:24:54