2
我有一個表中的數據的日期分組:如何退還的連續2行,其中的時間爲15分鐘分開分鐘(時間),通過
select SiteName, LName, Loc1, Appt, Date, Time, Dur from appt
SiteName LName Loc1 Appt Date Time Dur RN
Main Office Jones MO Annual 20171018 1330 15 1
Main Office Jones MO Annual 20171018 1345 15 2
Main Office Jones MO Annual 20171018 1530 15 3
Main Office Jones MO Annual 20171018 1545 15 4
Main Office Jones MO Annual 20171024 1045 15 1-----I don't need this row
Main Office Jones MO Annual 20171024 1530 15 2
Main Office Jones MO Annual 20171024 1545 15 3
Main Office Jones MO Annual 20171025 1330 15 1
Main Office Jones MO Annual 20171025 1345 15 2
Main Office Jones MO Annual 20171025 1430 15 3
Main Office Jones MO Annual 20171025 1445 15 4
Main Office Jones MO Annual 20171025 1530 15 5
Main Office Jones MO Annual 20171025 1545 15 6
Main Office Jones MO Annual 20171027 1045 15 1-----I don't need this row
Main Office Jones MO Annual 20171027 1530 15 2
Main Office Jones MO Annual 20171027 1545 15 3
Main Office Jones MO Annual 20171031 1030 15 1
Main Office Jones MO Annual 20171031 1045 15 2
Main Office Jones MO Annual 20171031 1330 15 3
Main Office Jones MO Annual 20171031 1345 15 4
Main Office Jones MO Annual 20171031 1430 15 5
Main Office Jones MO Annual 20171031 1445 15 6
Main Office Jones MO Annual 20171031 1530 15 7
Main Office Jones MO Annual 20171031 1545 15 8
Main Office Jones MO Annual 20171101 1145 15 1
Main Office Jones MO Annual 20171101 1330 15 2
Main Office Jones MO Annual 20171101 1345 15 3
Main Office Jones MO Annual 20171101 1430 15 4
Main Office Jones MO Annual 20171101 1445 15 5
我試圖返回分鐘連續2行,其中的時間爲15分鐘間隔(時間),通過日期
例如分組,我的結果應該是這樣的:
Results:
SiteName LName Loc1 Appt Date Time Dur
Main Office Jones MO Annual 20171018 1330 15
Main Office Jones MO Annual 20171018 1530 15
Main Office Jones MO Annual 20171024 1530 15
Main Office Jones MO Annual 20171025 1330 15
Main Office Jones MO Annual 20171025 1430 15
Main Office Jones MO Annual 20171025 1530 15
Main Office Jones MO Annual 20171027 1530 15
Main Office Jones MO Annual 20171031 1030 15
Main Office Jones MO Annual 20171031 1330 15
Main Office Jones MO Annual 20171031 1430 15
Main Office Jones MO Annual 20171031 1530 15
Main Office Jones MO Annual 20171101 1330 15
Main Office Jones MO Annual 20171101 1430 15
這是查詢我有這麼遠,但我需要額外的邏輯來顯示min(Time)o連續F 2行,其中所述時間爲15分鐘間隔,通過
select t.SiteName, t.LName, t.Loc1, t.Appt, t.Date, min(t.Time) as Time, Dur
from appt t
inner join (select Date,
max(rn) rn_x
from appt
where rn % 2 = 0
group by Date) x
on t.Date = x.Date
and t.rn <= x.rn_x
group by t.SiteName, t.LName, t.Loc1, t.Appt, t.Date, t.Dur,
case when rn%2 = 0
then rn/2 - 1
else rn/2
end
一切工作正常,則日期分組除了當我遇到這樣的數據在我的表
select SiteName, LName, Loc1, Appt, Date, Time, Dur from appt
SiteName LName Loc1 Appt Date Time Dur
Main Office Jones MO Office Visit 20171108 1300 15
Main Office Jones MO Office Visit 20171108 1315 15
Main Office Jones MO Office Visit 20171108 1330 15
Main Office Jones MO Office Visit 20171108 1345 15
結果返回
SiteName LName Loc1 Appt Date Time Dur
Main Office Jones MO Office Visit 20171108 1300 15
Main Office Jones MO Office Visit 20171108 1315 15------But I don't need this row
Main Office Jones MO Office Visit 20171108 1330 15
示例數據很棒,但這次它太多了。沒有超過需要解決的問題。 – jarlh