0

如何将查询中的列重命名为 mongodb?

这不应永久更改将来查询或数据库中的列(非持久性),而应仅更改查询

我正在寻找的功能类似于 SQL 中使用的“AS”SELECT col1 AS a, col2 as b, col1 as c FROM table

我知道这可以由应用程序进行相当简单的处理,但只是好奇这是如何在 mongodb 中实现的

4

2 回答 2

3

聚合框架可以实现类似的功能:

db.table.aggregate({ $project: { a: '$col1', b: '$col2', c: '$col3' }})

也可以通过在管道中添加 $match 来过滤特定条件:

db.table.aggregate(
  { $match: {'col1': 'value'} },
  { $project: { a: '$col1', b: '$col2', c: '$col3' }}
)

也就是说,由于聚合框架有一些限制,在应用程序中处理它应该是更好的选择。

于 2012-11-24T07:31:51.753 回答
0

我认为这是不可能的,因为在检索结果时,mongo 驱动程序会将它们映射到现有类。如果您更改字段的名称,则无法进行映射

于 2012-11-24T06:47:38.177 回答