5

静的スキーマを持つ特定の列ファミリの列名を取得できる CQL3 のクエリがあるかどうか疑問に思っていますか?
前もって感謝します :)

4

4 に答える 4

12

CQL3で特定のテーブルの列名を取得したい場合は、これを試してみてください

select * from system.schema_columns WHERE keyspace_name='#KS' AND columnfamily_name='#CF' allow filtering;

注: where 句のkeyspace_nameはオプションです。主に、より良いフィルタリングの目的で使用されます(たとえば、複数のキースペースで同じ名前のテーブル)

于 2013-04-17T11:44:58.773 に答える
10

systemこれを行うには、キースペースを使用できます。

SELECT column_name FROM system.schema_columnfamilies 
  WHERE keyspace_name = 'testks' AND columnfamily_name = 'testcf';

cqlsh での出力 (cql3 を使用):

 column_name
-------------
    password

以下を使用して、列のキーを計算できます。

SELECT key_aliases FROM system.schema_columnfamilies WHERE keyspace_name='testks' 
AND columnfamily_name='testcf';

出力:

 key_aliases
--------------
 ["username"]
于 2013-04-17T09:41:35.280 に答える