HANA SQL Snippets(検証時にたまに使うSQL)

HANAで検証時によく使うSQL。たまにしか使わず、すぐ忘れるため、メモしておきます。

SOURCE_TABから抽出してそのままTARGET_TABへINSERT

INSERT INTO TARGET_TABL( SELECT * from SOURCE_TAB)

大量データを挿入するときに使います。System View の objectsをクロスジョインすることで8000万件くらいまで挿入できます。項目は乱数を入れています。

insert into "TEST_TAB" (
select top 100000 CAST(ROW_NUMBER() OVER() AS INTEGER) AS "ID", round(rand(), 0, ROUND_HALF_UP) as "fld001", round(rand()*100, 0, ROUND_HALF_UP) as "fld002", round(rand()*30000, 0, ROUND_HALF_UP) as "fld003" from objects cross join objects
);

WITHを使って柔軟なSQL書けます

with X as (select id from TEST1)
select id from X

以下のノートに参考になるSQLが詰まっています。

1969700 – SQL Statement Collection for SAP HANA