私は2つのテーブル、顧客と販売私はまだCustomersテーブルにロードされ、私が構築されていないすべてのお客様は、以下の販売から抽出する必要があり SQL Serverの2014レコードを選択
を持っています2MAX()
フィールドを追加するように依頼される前に、かなりうまくいきました。
INSERT INTO Customers (.....)
SELECT distinct
d.UserName,
d.postalCode,
d.location,
d.country,
max(d.invoiceamount) invoiceamount,
max(d.itemscount) itemscount,
d.storeID
FROM S.dbo.[Sales] d
LEFT JOIN G.dbo.Customers s ON d.Username=s.UserName
WHERE s.UserName IS NULL
AND d.username IS NOT NULL
GROUP BY d.UserName, d.postalCode, d.location,
d.country, max(d.invoiceamount), max(d.itemscount), d.storeID
が、クエリが(最大を受け付けない)グループ内:ここ
がクエリである
別の状況では、私はCROSS APPLY
を使用しますが、ここで以来、私は、ユーザー名がNULLであるレコードを抽出する必要があります1つのテーブルに...私はどのようにクエリを構築するのか分からない。
いくつかのヒントを教えてください。
'GROUP BY'節で' MAX'関数とその列を削除してみましょう: 'GROUP BY d.UserName、d.postalCode、d.location、 d.country、d.storeID' –
はいFelix、あなた今夜はあまりにも疲れていました。実際、私は2つの異なるメールをマージし、間違った質問を投稿しました。本当の問題は全く異なります。私は別の質問をするとおそらく良いです。元の質問に言及した場合、あなたの答えは完全に正しいです。もう一度申し訳ありません – Joe
あなたが質問した後であなたの質問を完全に変更しないでください。元の質問を解決して新しい質問をしたい場合は、(1)回答を受け入れ、その答えがあなたの問題解決に役立った場合、(2)新しい質問をする必要があります。 –