7.3.12. column_list
¶
7.3.12.1. 概要¶
column_list
コマンドはテーブルにあるカラムの一覧を返します。
7.3.12.2. 構文¶
このコマンドの引数は1つで必須です:
column_list table
7.3.12.3. 使い方¶
以下は column_list
コマンドの簡単な使用例です。
実行例:
table_create Users TABLE_PAT_KEY ShortText
# [[0, 1337566253.89858, 0.000355720520019531], true]
column_create Users age COLUMN_SCALAR UInt8
# [[0, 1337566253.89858, 0.000355720520019531], true]
column_create Users tags COLUMN_VECTOR ShortText
# [[0, 1337566253.89858, 0.000355720520019531], true]
column_list Users
# [
# [
# 0,
# 1337566253.89858,
# 0.000355720520019531
# ],
# [
# [
# [
# "id",
# "UInt32"
# ],
# [
# "name",
# "ShortText"
# ],
# [
# "path",
# "ShortText"
# ],
# [
# "type",
# "ShortText"
# ],
# [
# "flags",
# "ShortText"
# ],
# [
# "domain",
# "ShortText"
# ],
# [
# "range",
# "ShortText"
# ],
# [
# "source",
# "ShortText"
# ]
# ],
# [
# 256,
# "_key",
# "",
# "",
# "COLUMN_SCALAR",
# "Users",
# "ShortText",
# []
# ],
# [
# 257,
# "age",
# "/tmp/groonga-databases/commands_column_list.0000101",
# "fix",
# "COLUMN_SCALAR|PERSISTENT",
# "Users",
# "UInt8",
# []
# ],
# [
# 258,
# "tags",
# "/tmp/groonga-databases/commands_column_list.0000102",
# "var",
# "COLUMN_VECTOR|PERSISTENT",
# "Users",
# "ShortText",
# []
# ]
# ]
# ]
7.3.12.4. 引数¶
このセクションでは column_list
の引数について説明します。
7.3.12.4.1. 必須引数¶
すべての引数は必須です。
7.3.12.4.1.1. table
¶
カラムの一覧を取得するテーブルの名前を指定します。
7.3.12.5. 戻り値¶
column_list
はテーブルのカラム一覧を返します。
[
HEADER,
[
COLUMN_LIST_HEADER,
COLUMN_INFORMATION1,
COLUMN_INFORMATION2,
...
]
]
HEADER
HEADER
については 出力形式 を参照してください。
COLUMN_LIST_HEADER
COLUMN_LIST_HEADER
は 各COLUMN_INFORMATION
の内容を説明します。
COLUMN_LIST_HEADER
は以下の形式です:[ ["id", "UInt32"], ["name", "ShortText"], ["path", "ShortText"], ["type", "ShortText"], ["flags", "ShortText"], ["domain", "ShortText"], ["range", "ShortText"], ["source", "ShortText"] ]以下のことを意味します。
COLUMN_INFORMATION
の1番目の要素はid
の値で、その値の型はUInt32
です。
COLUMN_INFORMATION
の2番目の要素はname
の値で、その値の型はShortText
です。
COLUMN_INFORMATION
の3番目の要素は…詳細については、次の
COLUMN_INFORMATION
の説明を参照して下さい。このフィールドはカラムの情報のメタデータを提供します。したがって、このフィールドは人ではなくプログラムに有用です。
COLUMN_INFORMATION
各
COLUMN_INFORMATION
は以下の形式です:[ ID, NAME, PATH, TYPE, FLAGS, DOMAIN, RANGE, SOURCES ]
ID
GroongaデータベースのカラムIDです。通常、それを気にする必要はありません。
NAME
カラム名。
PATH
カラムのデータを保存しているパス。
TYPE
カラムの型。次のうちのどれかです。
値
説明
fix
このカラムは、固定長カラムです。固定長型のスカラーカラムは、固定長カラムです。
var
このカラムは、可変長カラムです。ベクターカラムまたは可変長型のスカラーカラムは、可変長カラムです。
index
このカラムはインデックスカラムです。
FLAGS
カラムのフラグです。各フラグは、
COLUMN_VECTOR|WITH_WEIGHT
のように|
で分けられています。FLAGS
は、COLUMN_SCALAR
,COLUMN_VECTOR
,COLUMN_INDEX
のいずれか1つを含まなければいけません。他のフラグは省略可能です。有効なフラグは以下の通りです。
フラグ
説明
COLUMN_SCALAR
このカラムはスカラーカラムです。
COLUMN_VECTOR
このカラムはベクターカラムです。
COLUMN_INDEX
このカラムはインデックスカラムです。
WITH_WEIGHT
このカラムは、重みを持つことができます。
COLUMN_VECTOR
とCOLUMN_INDEX
は重みを持てます。COLUMN_SCALAR
は、重みを持ちません。
WITH_SECTION
このカラムはセクション(段落)情報を持つことができます。
COLUMN_INDEX
はセクション(段落)情報を持てます。COLUMN_SCALAR
とCOLUMN_VECTOR
はセクション(段落)情報を持ちません。マルチカラムインデックスはこのフラグを持ちます。
WITH_POSITION
このカラムは出現位置情報を持つことができます。
COLUMN_INDEX
は出現位置情報を持てます。COLUMN_SCALAR
とCOLUMN_VECTOR
は出現位置情報を持ちません。全文検索インデックスはこのフラグを持つべきです。
PERSISTENT
このカラムは永続カラムです。それは 擬似カラム ではないことを意味します。
DOMAIN
カラムを持っているテーブルの名前です。
RANGE
カラムの型名です。型名かテーブル名です。
SOURCES
インデックスのソースカラム名の配列です。インデックスカラムがマルチカラムインデックスの場合、配列は2つまたはそれ以上のソースカラム名を有します。
COLUMN_SCALAR
とCOLUMN_VECTOR
では常に空の配列です。