如何在 MongoDB 上按字符串长度对结果进行排序

2023-12-19

我可以在mysql上轻松完成

select * from TABLE order by length(FIELD) asc

我怎样才能在 MongoDB 上做到这一点?


MongoDB 3.4 引入了$strLenCP https://docs.mongodb.com/manual/reference/operator/aggregation/strLenCP/最终支持这一点的聚合运算符。一个例子:

db.collection.aggregate(
    [
        {$project: {
            "field": 1,
            "field_length": { $strLenCP: "$field" }
        }},
        {$sort: {"field_length": -1}},
        {$project: {"field_length": 0}}
    ]
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 MongoDB 上按字符串长度对结果进行排序 的相关文章

随机推荐

  • 如何设置 BLE 通告数据包的设备名称字段

    我使用 API 来构建广告数据包 我通过true to setIncludeDeviceName AdvertiseData data new AdvertiseData Builder setIncludeDeviceName true
  • 在php中模糊搜索数组

    在我搜索之后 我发现了如何对a进行模糊搜索string 但我有一个字符串数组 search a gt laptop b gt screen 我从 MySQL 数据库中检索到的 是否有任何 php 类或函数可以对单词数组进行模糊搜索 或者至少
  • Json 日期到 Java 日期并返回 Json 日期

    我在这里查看了所有可能的答案 但我很难弄清楚这件事 我在字符串中有 Json 日期 我想在不损失时间的情况下转换为 Java 日期 我还想从 Java Date 转换为 Json Date 字符串 这是我所拥有的 String jsonDa
  • 如何从图中获取顶点 ID

    请考虑以下事项 library igraph id lt c 1 2 A B name lt c 02 653245 03 4542342 Peter Mary category lt c digit digit char char fro
  • Scala 中有双向映射之类的东西吗?

    我想链接 2 列唯一标识符 并且能够通过第二列值获取第一列值以及通过第一列值获取第二列值 就像是 Map 1 lt gt one 2 lt gt two 3 lt gt three Scala中有这样的设施吗 实际上我需要更多 3 列 用于
  • 添加滚动视图会使应用程序崩溃

    我的任务是为情人节创建一个应用程序 我正在制作一个情书生成器 我只能使用一项活动 因此我创建了一个文本视图 将可见性设置为消失 这封情书有点长 所以我想要滚动视图 添加该内容会使应用程序崩溃 请帮忙
  • javascript中对象串联的问题

    我在连接java脚本中的对象时遇到问题 例如 var firstObj firstObj info sam kam var secObj secObj info ram dam 我需要的输出 firstObj info sam kam ra
  • ValueError:Python 中 float() 的文字无效

    To all 我很好奇是否有人可以帮助我理解错误 ValueError float 的无效文字 当我将文本文件传递到列表然后尝试将此列表转换为浮点值时 我得到了这个信息 a open input txt r lines a readline
  • 使用react-chartjs-2显示每个切片的饼图数据值

    我正在制作一个饼图 并且正在努力显示每个切片的饼图数据值 由于我的应用程序是用 React js 编写的 因此我使用react chartjs 2 我找到了这个针对chart js的解决方案并尝试实现 但它不适用于react chartjs
  • 使用动态规划进行硬币找零

    我一直在使用动态规划来解决硬币找零问题 我尝试创建一个数组 fin 其中包含该索引所需的最小硬币数量 然后打印它 我编写了一段代码 我认为应该给出正确的输出 但我不明白为什么它没有给出准确的答案 例如 对于输入 4 3 1 2 3 4是要找
  • 如何让 Go HTTP 客户端不自动遵循重定向?

    我目前正在用 Go 编写一些与 REST API 交互的软件 我尝试查询的 REST API 端点返回 HTTP 302 重定向以及指向资源 URI 的 HTTP Location 标头 我正在尝试使用 Go 脚本来获取 HTTP Loca
  • 从 Android 选项菜单启动 Activity

    我浏览了这些论坛以找到该问题的解决方案 尽管似乎有解决方案 但似乎没有一个对我有用 所以就这样吧 我是 Android 开发的新手 我有一个带有选项菜单的应用程序 当我单击选项中的一个时 我希望它启动一项新活动 但我不断收到错误 Inten
  • Strassen 算法中的递归

    我想知道如何在斯特拉森的算法中进行递归调用 以及它们到底需要在哪里 我知道 7 个乘数比 8 个乘数更有效 但我对如何递归计算这些乘数感到困惑 特别是 如果我们遵循分而治之的范式 那么我们究竟要 划分 矩阵的哪一部分 以及我们如何才能做到这
  • 类型的调用者没有这样的方法

    我创建了一个类 其中包含multi函数重载的定义 但是当我尝试调用该类和重载方法时 它会抛出错误 可以运行以产生此错误的工作示例如下所示 class Test multi test data return test data data el
  • Python 的 Fasttext - 模块“fasttext”没有属性“load_model”

    请原谅我的新手 但 fasttext 在 python 上不适合我 我正在使用运行 python 3 6 的 anaconda 我的代码如下 只是一个例子 import fasttext model fasttext load model
  • Java 1.6 Windows-1252 编码因 3 个字符而失败

    编辑 我确信这个问题有点荒谬 感谢那些回复的人 我可能会发布一个更具体的后续问题 今天 我正在解决一些编码问题 并编写了这个单元测试来隔离基本重现案例 int badCount 0 for int i 1 i lt 255 i String
  • MySQLWorkbench正向工程错误

    我正在 MySql Workbench 8 0 中处理模型 当我单击正向工程并尝试生成我的模型的脚本时 我得到 Executing SQL script in server ERROR Error 1064 You have an erro
  • 根据列名称列表对列进行子集化,并将该列放在其前面

    我有一个更大的数据集 遵循相同的顺序 一个唯一的日期列 数据 唯一的日期列 日期等 我不仅尝试按名称对数据列进行子集化 还尝试对唯一的日期列进行子集化 下面的代码根据名称列表选择列 这是我想要的一部分 但是关于如何在子集列之前获取该列有什么
  • 存储使用 Atlassian SourceTree 所做的更改

    我的项目中更改了很多文件 我想隐藏 2 个文件 但我有点害怕犯错误 因为我从未这样做过 If i would stash now will it only stash the 2 staged files 如果我不标记 保留分阶段更改 它会
  • 如何在 MongoDB 上按字符串长度对结果进行排序

    我可以在mysql上轻松完成 select from TABLE order by length FIELD asc 我怎样才能在 MongoDB 上做到这一点 MongoDB 3 4 引入了 strLenCP https docs mon