SQL Server 2008 R2 を使用しており、日付が重複しているかどうかを示すクエリを作成しようとしています。
誰かが特定の基準でカバーされている日数を計算しようとしています。これがテーブルの例です...
CREATE TABLE mytable
(
CARDNBR varchar(10)
GPI char(14) ,
GPI_DESCRIPTION_10 varchar(50) ,
RX_DATE datetime ,
DAYS_SUPPLY int ,
END_DT datetime ,
METRIC_QUANTITY float
)
INSERT INTO mytable VALUES ('1234567890','27200040000315','Glyburide','01/30/2013','30','03/01/2013','60')
INSERT INTO mytable VALUES ('1234567890','27200040000315','Glyburide','03/04/2013','30','04/03/2013','60')
INSERT INTO mytable VALUES ('1234567890','27250050007520','Metformin','01/03/2013','30','02/02/2013','120')
INSERT INTO mytable VALUES ('1234567890','27250050007520','Metformin','02/27/2013','30','03/29/2013','120')
最初の RX_DATE から最後の END_DT までの人がカバーされた日数をカウントできるようにしたいと考えています。この例では 90 日 (4/3/13 - 1/3/13) です。
その部分は完了していますが、ここで問題が発生しています。
列 1 と列 2 の間に、薬を服用していない期間が 3 日間ありました。行 3 と 4 の間には 25 日間の期間がありました。ただし、その 25 日間で、行 1 がそのギャップをカバーしました。したがって、行 1 と行 2 の間のギャップを示す最後の数字は 3 です。
どんな助けでも大歓迎です。
ありがとう。