MonetDB 查询计划解释中的语句是什么意思?
What do the statements in MonetDB query plan explanations mean?
我正在尝试了解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)对结果进行排序。你能告诉我为什么第二种比第一种有更多的参数吗?
(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?
谢谢!!
理解 explain SQL 语句的输出需要 MonetDB Assembly-like Language (MAL) 的知识。
关于函数 sql.projectdelta、sql.subdelta 和 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,假,假);
被描述为:
Returns a copy of the BAT sorted on tail values, a BAT that specifies
how the input was reordered, and a BAT with group information.
The input and output are (must be) dense headed.
The order is descending if the reverse bit is set.
This is a stable sort if the stable bit is set.
(X_33,r1_40,r2_40) := algebra.subsort(X_22,r1_36,r2_36,假,假);
描述为:
Returns a copy of the BAT sorted on tail values, a BAT that specifies
how the input was reordered, and a BAT with group information.
The input and output are (must be) dense headed.
The order is descending if the reverse bit is set.
This is a stable sort if the stable bit is set.
MAL 函数可以根据其 return 值进行重载。 algebra.subsort 可以 return 1、2 或 3 个值,具体取决于您的要求。检查 algebra.mal 以了解不同的可能性。
我正在尝试了解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)对结果进行排序。你能告诉我为什么第二种比第一种有更多的参数吗?
(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?
谢谢!!
理解 explain SQL 语句的输出需要 MonetDB Assembly-like Language (MAL) 的知识。
关于函数 sql.projectdelta、sql.subdelta 和 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,假,假); 被描述为:
Returns a copy of the BAT sorted on tail values, a BAT that specifies how the input was reordered, and a BAT with group information. The input and output are (must be) dense headed. The order is descending if the reverse bit is set. This is a stable sort if the stable bit is set.
(X_33,r1_40,r2_40) := algebra.subsort(X_22,r1_36,r2_36,假,假); 描述为:
Returns a copy of the BAT sorted on tail values, a BAT that specifies how the input was reordered, and a BAT with group information. The input and output are (must be) dense headed. The order is descending if the reverse bit is set. This is a stable sort if the stable bit is set.
MAL 函数可以根据其 return 值进行重载。 algebra.subsort 可以 return 1、2 或 3 个值,具体取决于您的要求。检查 algebra.mal 以了解不同的可能性。