如何从地图快速投影某些列?

时间:2013-10-18 20:33:16

标签: c++ sql map stl

我正在写一个SQL解释器 我选择将我的元组存储为vector s的数组(实际为map)。 表的每个元组都是map。键是属性名称,值是该属性的值 我必须支持project等操作。

所以我必须实现以下方法:

Table Table::project(const vector<string> &attributes) {
  // return a Table with just the attributes passed
}
Table类中的

,它接受要投影的属性并返回一个只包含这些属性的新表。

我能想到这样做的唯一方法是:

Table Table::project(const vector<string> &attributes) {
  // iterate through each tuple of the current table. For each tuple,
  // iterate through all attributes passed, find the value of each one in
  // the current tuple and add it to the new tuple. Insert the new tuple into
  // the new table. Return the table.
}

有更好的方法吗?
我应该使用更好的数据结构吗?

0 个答案:

没有答案