一所懸命に手抜きする

監査の仕事をしています。ITを利用し、良い意味で「手抜き」することは効率化と精度アップに役立つと思うんです。部下への引き継ぎのためにまずは諸々頭から引っ張り出そうとブログを始めました。

[ Main ]  [ 別館 ]
当ブログで取り上げられている事案やデータベース、人物等はすべてフィクションです。

ピリオドが含まれるAS/400テーブル名のSQL表記法

ピリオドを含むテーブル名

 AS400のテーブル名はAS/400端末で見ると、一般にライブラリ名/ファイル名となります。
 SQLで呼び出す場合には、AS/400上のSTRSQLなどでもライブラリ名.ファイル名となるようです。
 当社のシステム担当が 実績/売上.01、実績/売上.02・・・のようにテーブル名にピリオドを含めて設定しました。
 SQLでは、 SELECT * FROM 実績.売上.01 とやるとエラーとなってしまいます。テーブル名にピリオドが含まれる場合にはどのようにSQLを使えばよいのでしょうか。

コピーしてファイル名を変えるとか

 稼働中のファイルを勝手にリネームする訳にはいきませんが、コピーしてピリオドのないテーブル名にすればよいと考えられます。
 ただ、今回の場合1テーブルが200フィールド×数千万レコードもあります。
 そんな巨大なコピーを作って無駄に領域を専有するのも気が引けます。
 データマイニング的に調べるのでレコードやフィールドを絞りたくありません。

""で囲めばOK!

 答えは簡単でした。
SELECT * FROM 実績."売上.01" のようにテーブル名を"“で囲めばOKです。 f:id:a_habakiri:20161229134725p:plain:w1

広告を非表示にする