テーブルに既に MYHOUR と STATUS の列があり、これら 2 つの列しかない場合、OFF_HOURS 列を計算するビューを作成するにはどうすればよいですか? OFF_HOURS 列は、連続した「OFF」ステータス番号です。ありがとう。
MYHOUR STATUS OFF_HOURS
------ -------- --------
1 OFF 1
2 OFF 2
3 ON 0
4 ON 0
5 ON 0
6 ON 0
7 ON 0
8 OFF 1
9 OFF 2
10 OFF 3
11 ON 0
12 ON 0
13 OFF 1
14 OFF 2
15 OFF 3
16 OFF 4
17 OFF 5
18 OFF 6
19 OFF 7
20 OFF 8
21 OFF 9
22 OFF 10
23 OFF 11
24 OFF 12
以下は、サンプル テーブルとデータを作成するためのスクリプトです。
CREATE TABLE Test_Table (
myHour INTEGER,
status VARCHAR2(8));
BEGIN
FOR i IN 1..2
LOOP
INSERT INTO Test_Table VALUES (i, 'OFF');
END LOOP;
FOR i IN 3..7
LOOP
INSERT INTO Test_Table VALUES (i, 'ON');
END LOOP;
FOR i IN 8..10
LOOP
INSERT INTO Test_Table VALUES (i, 'OFF');
END LOOP;
FOR i IN 11..12
LOOP
INSERT INTO Test_Table VALUES (i, 'ON');
END LOOP;
FOR i IN 13..24
LOOP
INSERT INTO Test_Table VALUES (i, 'OFF');
END LOOP;
COMMIT;
END;
/