Kdbplus-q-language-maintenance-functions

提供:Dev Guides
移動先:案内検索

Q言語-メンテナンス機能

.Q.en

*.Q.en* は、シンボル列を列挙することでテーブルを表示するのに役立つ2項関数です。 これは、履歴データベース(表示、パーティションテーブルなど)を処理する場合に特に便利です。 −
.Q.en[`:directory;table]

ここで、 directory は* symファイル*が配置されている履歴データベースのホームディレクトリであり、 table は列挙されるテーブルです。

テーブルを手動で列挙する必要はありません。これは、展開されたテーブルとして保存するために必要です。

.Q.en[`:directory_where_symbol_file_stored]table_name

.Q.dpft

*.Q.dpft* 関数は、パーティションテーブルおよびセグメントテーブルの作成に役立ちます。 テーブルを展開するだけでなく、パーティションテーブルも作成するため、*。Q.en *の高度な形式です。
*.Q.dpft* で使用される4つの引数があります-
  • パーティションを作成するデータベースのシンボリックファイルハンドル、
  • q テーブルのパーティション分割に使用するデータ値、
  • parted( p#)属性が適用されるフィールドの名前(通常は sym)
  • テーブル名。

それがどのように機能するかを見てみましょう-

q)tab:([]sym:5?`msft`hsbc`samsung`ibm;time:5?(09:30:30);price:5?30.25)

q).Q.dpft[`:c:/q/;2014.08.24;`sym;`tab]
`tab

q)delete tab from `
'type

q)delete tab from `/
'type

q)delete tab from .
'type

q)delete tab from `.
`.

q)tab
'tab

メモリからテーブル tab を削除しました。 次に、dbからロードします。

q)\l c:/q/2014.08.24/

q)\a
,`tab

q)tab

   sym      time      price
-------------------------------
  hsbc    07:38:13   15.64201
  hsbc    07:21:05   5.387037
  msft    06:16:58   11.88076
  msft    08:09:26   12.30159
 samsung  04:57:56   15.60838

.Q.chk

Q.chk is a monadic function whose single parameter is the symbolic file handle of the root directory. It creates empty tables in a partition, wherever necessary, by examining each partition subdirectories in the root..

.Q.chk `:directory

ここで、 directory は履歴データベースのホームディレクトリです。