2016-04-01 3 views
1

私はMonetDBのクエリプランを理解しようとしています。MonetDBのクエリプランの説明での説明は何を意味していますか?

それぞれの指示がどこに保存されているのかわかる文書はどこにありますか? ない場合、誰もが私のクエリで

sql.projectdelta(X_15,X_23,X_25,r1_30,X_27) 

sql.subdelta(X_246,X_4,X_10,X_247,X_249), for example? 

を返却している私は(A、Bにより、例えば)二つの属性によって結果をソートしています私に言うことができます。 2番目のソートが最初のソートよりも多くのパラメータを持つ理由を教えてください。

(X_29,r1_36,r2_36) := algebra.subsort(X_28,false,false); 
(X_33,r1_40,r2_40) := algebra.subsort(X_22,r1_36,r2_36,false,false);    

algebra.subsortが(oid、columnType)のペアを返すか、または単にoidですか?

ありがとうございました!

答えて

1

説明SQL文の出力を理解するには、MonetDB Assembly-like Language (MAL)の知識が必要です。

関数sql.projectdelta、sql.subdta、およびalgebra.subsortに関して、monetdb libフォルダに署名と簡単な説明があります。例:

  • [MonetDB_install_folder] \ MonetDB5 \ libに\ monetdb5 \ sql.malすべてのSQL関数について
  • [MonetDB_install_folder] \ MonetDB5 \ libに\ monetdb5 \ algebra.malすべての代数関数のための
algebra.subsortのパラメータの異なる数に関する

  • (X_29、r1_36、r2_36):= algebra.subsort(X_28、偽、偽)。 は次のように説明されています

    BATのコピーがグループ情報とテール値、入力を並べ替えたか を指定BAT、およびBATでソートを返します。 入力と出力は密である必要があります。 リバースビットが設定されている場合、降順になります。 安定ビットが設定されている場合、これは安定したソートです。

  • (X_33、r1_40、r2_40):= algebra.subsort(X_22、r1_36、r2_36、偽、偽)。 は次のように説明されています

    BATのコピーがグループ情報とテール値、入力を並べ替えたか を指定BAT、およびBATでソートを返します。 入力と出力は密である必要があります。 リバースビットが設定されている場合、降順になります。 安定ビットが設定されている場合、これは安定したソートです。

MAL関数は、その戻り値にbassed過負荷状態にすることができます。 algebra.subsortは、あなたが求めているものに応じて、1,2、または3の値を返すことができます。さまざまな可能性のためのChecl代数。

+1

ありがとうございます。これらのファイルをチェックすると役立ちます。しかし、PostgreSQLのようなドキュメントの中には素晴らしいものがあります。 – user296733