次の初期データがあります。
私が一緒に来たいのは:
ロジックは次のとおりです。特定の「accNumber」の「Rest」値ごとに、その特定の「Rest」値の最小日付を「date_in」に入れ、「date_fin」には「date」-1 を入れたい同じ「accNumber」の「Rest」属性の次の「日付」の値。'Rest' 値が 0 の行を選択するべきではありません。もう 1 つの問題は、特定の accNumber の最後の 'Rest' 値に関するものです。同じ 'accNumber' を持つ次の日付はありません。そのため、日付の最後の値を date_fin として単純に取得する必要があります (提供されたテーブルでこれを確認できます。ここに基本的な作業があります)。私はやったが、それは私が望むように動作しません:
SELECT a.accNumber, a.Rest, MIN(a.Date), MIN(b.Date)
FROM Table1 a
LEFT JOIN Table1 b ON a.accNumber=b.accNumber
WHERE a.Date<b.Date
AND a.Rest<>0
AND a.accNumber=b.accNumber
GROUP BY a.accNumber, a.Rest
ORDER BY a.accNumber
助けてください。前もって感謝します