次のようなスキーマがあります(簡略化):
CREATE TABLE MyTable (
DateTimeOffset HitDate NOT NULL,
IpAddress varchar(15)
)
サンプル行は次のようになります。
'7/10/2013 8:05:29 -07:00' '111.222.333.444'
毎日 (たとえば、2013 年 7 月 10 日) の一意の IpAddresses の数を取得するクエリを作成しようとしています。実際、その部分はかなり簡単で、そのためのクエリをすでに作成しています。IpAddresses
ただし、このクエリでは、現在の日付より前に存在したことのない一意の数が必要です。デート直前でもデート後でも構いません。
たとえば、次のデータがあり、これがすべてだとします。
'7/10/2013 8:05:29 -07:00' '111.222.333.444'
'7/10/2013 12:05:29 -07:00' '111.222.333.222'
'7/9/2013 9:05:29 -07:00' '111.222.333.444'
'7/9/2013 10:05:29 -07:00' '111.222.333.555'
'7/8/2013 11:05:29 -07:00' '111.222.333.222'
'7/8/2013 4:05:29 -07:00' '111.222.333.555'
クエリは次のように出力する必要があります。
'7/8/2013' 2 (neither IpAddress existed before this date so both are new)
'7/9/2013' 1 (only one of the IpAddresses is new - the one ending in '444')
'7/10/2013' 0 (both IpAddresses had existed before this date)
ターゲット データベースはSQL Server 2012
です。最初に SQL ステートメントを正しく作成した人に 100 ポイントの報奨金を提供します。