ここではちょっと難しいものがあります。検索ラウンドを持っていて、私が恐れるこのようなものはまったく見つかりません。SQL Server - テーブルの特定の列のエントリに対してLIKEの一致を返す必要があります
私は次のシナリオでの基準を照合することによってグループ化されたすべてのような一致が返され、クエリを設定する必要があり:
1行のACCOUNT_NAMEのエントリは、1つのまたは複数の他の行(複数可)でACCOUNT_NAMEエントリのようなものである
1行のAND/OR ACCOUNT_NUMBERエントリは、1つのまたは複数の他の行(複数可)
にACCOUNT_NUMBERエントリに等しい場合、最新のエントリiの
Open_date (他のエントリのClose_dateから90日以内に)
さらに洗練されたものは、open_dateによって最も遅くなった期間(通常は暦月、場合によっては四半期)を指定することです。
必要なものはすべて1つのテーブル内にありますが、主キーは現在定義されていませんが、主IDはaccount_number
とは異なる固有の参照です。表の共用により、主キーの定義などの修正を行うことができない場合があります。
例:特定の期間内(90日間)に別の注文を閉じた後、顧客が新しい注文を開始した繰り返し注文(理想的には指定期間、暦月、四半期内)を検索する場合。 "繰返し/重複注文がグループ化され、各エントリのすべての列のデータが返されるようにグループ分けする必要があります。
レガシーおよび継続中の問題により、重複する顧客エントリが設定されるため、アカウント番号が存在しない場合
論理的な観点から、事前にご意見をお寄せいただきありがとうございます。 SQLのn00bとして、私はクエリを書くことさえも星にするのに苦労しています。
以下EDITサンプルデータおよび所望の結果:
Order_Ref Account_Name Account_Number Open_date Close_date other_thing_1 other_thing_2 other_thing_3
1 John Smith 1001 1st Jan 2017 1st Feb 2017 xx xx xx
2 Jim Brown 1002 1st Feb 2017 15th Feb 2017 xx xx xx
3 Emily Flathead 1003 1st Mar 2017 15th Mar 2017 xx xx xx
4 Joane Sandhu 1004 1st Apr 2017 14th Apr 2017 xx xx xx
5 John Smith 1001 15th Aug 2017 30th Aug 2017 xx xx xx
6 Reuben Goldman 1005 1st Sept 2017 10th Sept 2017 xx xx xx
7 John Smithh 1006 5th Sept 2017 19th Sept 2017 xx xx xx
8 Sandra Jackson 1007 10th Sept 2017 19th Sept 2017 xx xx xx
9 Peter Jenkins 1008 19th Sept 2017 3rd Oct 2017 xx xx xx
10 John Smith 1001 1st Oct 2017 12th Oct 2017 xx xx xx
11 Emily Flathead 1003 3rd Oct 2017 14th Oct 2017 xx xx xx
12 Emily Flathead 1003 20th Oct 2017 NULL xx xx xx
望ましい結果
5 John Smith 1001 15th Aug 2017 30th Aug 2017 xx xx xx
7 John Smithh 1006 5th Sept 2017 19th Sept 2017 xx xx xx
10 John Smith 1001 1st Oct 2017 12th Oct 2017 xx xx xx
11 Emily Flathead 1003 3rd Oct 2017 14th Oct 2017 xx xx xx
12 Emily Flathead 1003 20th Oct 2017 NULL xx xx xx
アイデアはエミリーマイナスの最近のジョン・スミスとジョン・Smithh注文をハイライト表示しますが、歴史的なものを無視しても最近のことです歴史的なものを無視する。
実際の日付はdatetimeであり、NULLは(英国の)I/mベースの混乱を避けるために(close_dateのために)書かれた長さです。
サンプルデータと望ましい結果は、あなたがしたいことを説明するのに役立ちます。 –
問題はありません、匿名のセットです: – portland
Dammit、I'm over character limit。 – portland