Home > Archives > 2007-08

2007-08

連続したデータを取得する

  • 2007-08-09 (木)
  • DB

テーブル作成

create table integers (i integer NOT NULL PRIMARY KEY);

データ投入

insert into integers (i) values (0);

insert into integers (i) values (1);

insert into integers (i) values (2);

insert into integers (i) values (3);

insert into integers (i) values (4);

insert into integers (i) values (5);

insert into integers (i) values (6);

insert into integers (i) values (7);

insert into integers (i) values (8);

insert into integers (i) values (9);

とりあえず連続した2桁の整数データを30個生成してみる

select 10*t.i+u.i as days

From integers as u

CROSS JOIN integers as t

WHERE

10*t.i+u.i BETWEEN 0 AND 29

order

by days

とりあえず連続した3桁を90個にしてみる

select 100*t.i+10*t.i+u.i as days

From integers as u

CROSS JOIN integers as t

WHERE

10*t.i+
10*t.i+u.i BETWEEN 0 AND 89

order

by days

2007-01-01から連続した日付を31日分取得する

select to_date('2007-01-01','YYYY-MM-DD')+10*t.i+u.i as days

From integers as u

CROSS JOIN integers as t

WHERE

10*t.i+u.i BETWEEN 0 AND 30

order

by days

ふむふむ。PHPで開始日とその月の日数を入れてやればいろいろ使えそうだにゃ(=゚Д゚=))

Home > Archives > 2007-08

メタ情報
たいやき

Return to page top