まず、その奇妙なタイトルは残念です。ここには事があります: 私はアマゾンで製品を販売するオンラインショップで働いています。我々は異なるアイテムのセットを販売するので、複数のセット内の同じアイテムをamazon fbaに送信することが起こります。すべてのセットで一つの項目の合計を与えるために、私は次のクエリを書いた:各行のクエリによって返されたパラメータを持つSQL SUM()関数
SELECT
SUM(nQuantity)
AS [total]
FROM [amazon_fba]
INNER JOIN (SELECT
[cArtNr]
FROM [tArtikel]
INNER JOIN (SELECT
[kStueckliste]
FROM [tStueckliste]
WHERE [kArtikel] = (SELECT
[kArtikel]
FROM [tArtikel]
WHERE [cHAN] = 12345)) [bar]
ON [tArtikel].[kStueckliste] = [bar].[kStueckliste]) [foo]
ON [amazon_fba].[cSellerSKU] = [foo].[cArtNr]
cHAN=12345
部分はちょうど私達が項目の合計数を知っているしたい一つの特定の項目を選択するために使用されます。このクエリ自体は正常に動作するので、これは問題ではありません。
しかし、私はまた、セットの一部であるすべての製品が[tArtikel].[kStueckliste]=0
を持っていることも知っています。だから、基本的に私はこのように
foreach (
select [kArtikel]
from [tArtikel]
where [tArtikel].[kStueckliste]=0
) do (
< the query I made >
)
のようなものを必要な
kArtikel | total
=================
| 23
56789 | 42
:私はのように、瞬時に、それぞれの合計で、これらすべての製品のリストを生成するには、このクエリを使用することができることを、考えに私を得たどの私は、次のステートメントを試してみました:
SELECT
SUM(nQuantity)
AS [total]
FROM [amazon_fba]
INNER JOIN (SELECT
[cArtNr]
FROM [tArtikel]
INNER JOIN (SELECT
[kStueckliste]
FROM [tStueckliste]
INNER JOIN (SELECT
[kArtikel]
FROM [tArtikel]
WHERE [tArtikel].[tStueckliste] = 0) [baz]
ON [tStueckliste].[kArtikel] = [baz].[kArtikel]) [bar]
ON [tArtikel].[kStueckliste] = [bar].[kStueckliste]) [foo]
ON [amazon_fba].[cSellerSKU] = [foo].[cArtNr]
これは私が和のリストを返すhoped- -as、代わりに私が作成したいすべての和の合計を与えませんでした。 私はSQLにかなり新しい(多分約2週間)ので、何をやるべきかわからないし、私の間違いはどこにあるのか、私の周りにgoogleのためにどのようなフレーズを使うべきなのか - このwierdのタイトル。だから、誰かが私を助けてくれるなら、正しい方向に向けることができれば、本当にうれしいだろう。