1

私はこれを行う方法を知っていると確信していますが、私の脳は今私を失望させています

1 日のさまざまな時間に患者から得られたバイタル サインの測定値を示すこのテーブルの例を見てみましょう。

ここに画像の説明を入力

毎日 FIRST レコードだけを返すにはどうすればよいですか? そのため、次のような結果セットになります。

ここに画像の説明を入力

この例のように、テーブル内のレコードが時系列順に並べられていない可能性があることに注意してください。クエリで、各 PatientID の ReadingTimestamp 列の最小値を見つけ、そのタイムスタンプに関連付けられた温度、脈拍、呼吸を表示するだけです。

4

3 に答える 3

1

あなたが言うように...しかし、サブクエリを使用して、各患者と日付の最初のレコードを除くすべてのレコードを削除します...

Select * From yrTable t
Where readingtimestamp = 
      (Select Min(readingtimestamp)
       From yrTable 
       Where PatientId = t.patientId
          And DateDiff(day, readingtimestamp, t.readingtimestamp) = 0)
于 2013-05-20T15:30:14.383 に答える
1
select y1.* from your_table y1
inner join 
(
  select patientid, min(readingtimestamp) as ts
  from your_table
  group by date(readingtimestamp), patientid
) y2 on y2.patientid = y1.patientid 
     and y2.ts = y1.readingtimestamp
于 2013-05-20T15:26:59.650 に答える