KOHARU'S STUDY BLOG
AS400(IBM i)について

初心者向け:AS400でデータを見る3つの方法  (DSPPPFM RUNQRY SQL)

AS400(IBM i)を使用する中で、データの確認や抽出を行う手段としてよく登場するのが、DSPPFM(ディスプレイ・フィジカル・ファイル・メンバー)、RUNQRY(ラン・クエリ)、そしてSQLです。

本記事では、それぞれの特徴と違いについて、初心者の方にもわかりやすく説明してみます。

(1)DSPPFM(Display Physical File Member)

どのようなコマンドか?

DSPPFMは、物理ファイル(PF)の中身をそのまま画面に表示するためのコマンド。データベースのテーブルを「テキストファイルのように確認する」といったイメージが近いと思います。

主な特徴

• データの生データをそのまま表示

• 表示は固定長で、フィールド名などは確認できない

→単にデータが並んで表示されるだけなので、どこからどこまでが項目の値なのか特定できない(RUNQRY、SQLで対処)

 • 表示専用(編集不可)

使用例

DSPPFM FILE(LIBRARY/FILE)

活用シーン

 • ファイルが正しく読み込まれているかの確認

 • データの整合性や文字コードの確認

(2) RUNQRY(Run Query)

どのようなコマンドか?

RUNQRYは、事前に WRKQRY コマンドで作成したクエリ定義(*QRYDFN)を実行して、条件に沿ったデータを抽出・表示するためのコマンドです。

主な特徴

 • クエリ定義に基づきデータを抽出・表示

 • 表形式で見やすい画面表示

 • フィルターや並び替えも可能(柔軟性はやや限定的)

使用例

RUNQRY QRYFILE(MYLIB/MYQUERY)

RUNQRY *N MYLIB/MYQRY

活用シーン

 • 定型的な検索や集計処理

 • SQLに不慣れでも簡単にデータを取り扱いたいとき

(3) SQL

どのようなコマンドか?

SQL(Structured Query Language)は、データベースを操作する標準的な言語で、IBM i でも STRSQL(対話形式)などで使用します。

主な特徴

 • 柔軟で高度なデータ抽出や結合、集計が可能

 • SELECT、JOIN などのSQL文法を使用

使用例

STRSQLを打ち込んだ後に、SQL文を記載。

SELECT * FROM LIBRARY/FILE WHERE COLUMN1 = ‘条件’;

活用シーン

 • 複雑な検索や集計、結合が必要な場合

 • システム開発やバッチ処理への組み込みなど

コマンドの使い分けまとめ

目的適したコマンド
データの中身をざっくり確認DSPPFM
決められた条件で抽出したいRUNQRY
複雑な条件で抽出したいSQL

おわりに

AS400(IBM i)では、同じ「データを確認する」作業でも、目的に応じて適切なコマンドを使い分けることが大切です!

私自身も最初は仕組みが分からず戸惑うことがありましたが、SQLのSELECT文を使いながら少しずつデータ構造を理解していくことで、だんだん慣れていくことができました。

SQLは参考書や解説サイトも充実していて学びやすいので、まずはSQLから始めてみるのも良い選択だと思います。

ぜひ自分に合った方法で、少しずつAS400の操作に慣れていってください!