Tôi đang cố gắng tạo một bảng với một chuỗi các ngày tháng trong đó.SQL Server 2008 Tạo một chuỗi ngày giờ
Tôi có thời gian ngày bắt đầu và ngày kết thúc được chỉ định (thời gian ngày kết thúc là kết thúc chuỗi), tôi thêm khoảng thời gian ~ (điều này có thể thay đổi) vào thời gian ngày bắt đầu tính bằng giây và điều này cho tôi ngày kết thúc thời gian.
Chuỗi tiếp theo sử dụng thời gian ngày kết thúc làm giá trị bắt đầu và thêm khoảng thời gian tính bằng giây vào nó. Để chứng minh đầu ra tôi cần. Có một cách nhanh chóng để tạo ra một bảng như vậy, ngoại trừ sử dụng rất nhiều chèn vào lệnh ?, Tôi thực sự bối rối
StartTime Endtime Duration
2011-07-20 11:00:33 2011-07-20 11:09:47 554
2011-07-20 11:09:47 2011-07-20 11:19:01 554
declare @StartTime datetime = '2011-07-20 11:00:33',
@EndTime datetime = '2011-07-20 15:37:34'
@Interval int = 554 -- this can be changed.
insert into tmp_IRange
values('2011-07-20 11:00:33', DATEADD(SECONDS, @Duration, 2011-07-20 11:00:33))
này trở nên rất tẻ nhạt .. đặc biệt là khi thời gian ngày kết thúc là 2011-07-20 15:37:34
có rất nhiều báo cáo chèn để làm :(
Bạn không thực sự chứng minh đầu ra của mình. Bạn có thể hiển thị ba dòng đầu tiên và cuối cùng mà bạn thực sự muốn không? –
Lưu ý rằng các câu trả lời dựa trên CTE đệ quy có giới hạn 32767 mức đệ quy. (Xem tài liệu MAXRECURSION.) – HABO
@ user92546 - Đó không phải là trường hợp. 'MAXRECURSION 0' không giới hạn. –