嘿伙计们我在查询时遇到问题。我有这些表:
lm_Artikel:
Index, Artikelbezeichnung, Status, Bestand,
Lieferant, Datum-Einlagerung, Lagerort, Typ
lm_Schwellwert:
Typ, Schwellwert
Typ
值是关键。在lm_Artikel
中,有多个artikel具有相同的Typ
。对于每个Typ
,我在Schwellwert
中都有一个lm_Schwellwert
。现在,我想选择Bestand
低于Schwellwert
的文章的索引。
这是我到目前为止所做的:
SELECT `Index`
FROM lm_Artikel
WHERE Bestand < (SELECT Schwellwert FROM lm_Schwellwert)
答案 0 :(得分:2)
似乎你想要这个:
SELECT A.`Index`
FROM lm_Artikel A
INNER JOIN lm_Schwellwert S
ON A.Typ = S.Typ
WHERE A.Bestand < S.Schwellwert
答案 1 :(得分:0)
希望我理解正确......
Artikel
Typ
的所有lm_Artikel
的数量
'Bestand'
的{{1}}总和是否小于Typ
Schwellwert
Index
中选择所有lm_Artikel
醇>
你可以试试这个:
Typ
SELECT `Index`
FROM lm_Artikel m
JOIN
(
SELECT s.`Typ`
FROM lm_Schwellwert s
JOIN
(
SELECT `Typ`, SUM(`Bestand`) AS sumbestand
FROM lm_Artikel
GROUP BY `Typ`
) t
ON s.`Typ`=t.`Typ`
WHERE t.sumbestand<s.`Schwellwert`
)y
ON m.`Typ`=y.`Typ`
内部确定哪个类型JOIN
小于相应的'Schwellwert'。
包裹'Bestand'
用于重新确定JOIN
表格中的Index
。