mongodb exception: $concat only supports strings, not NumberInt32解决办法
今天在用mongodb操作aggregation的时候出现这个问题,我是想格式化日期,例如”2013-10-17 04:41:37 UTC”变成”10月17日”,
'fdate' => { '$concat' => ['$date.month', '月', '$date.day', '日'] }
出现 exception: $concat only supports strings, not NumberInt32
原来$concat只能操作字符串,不支持数字类型,解决办法是用$substr
$date形如'2013-10-13 11:17:18 UTC'
'fdate' => { '$concat' => [ {$substr=>['$date', 5, 2]}, '月', {$substr=>['$date', 8, 2]}, '日'] }
$substr接受两个参数,一个是字符串的起点,一个是截取的字符串的长度。
相关推荐
-
mongodb错误tcmalloc: large alloc out of memory, printing stack and exiting解决办法
最近Mongodb会经常突然挂掉,检查日志发现如下的错误: 复制代码 代码如下: tcmalloc: large alloc 2061584302080 bytes == (nil) @ Tue Nov 26 17:45:04.539 out of memory, printing stack and exiting: 0xdddd81 0x6cfb4e 0x121021d 0xafcc1f 0xaf815f 0xaf8d1d 0xaf8e0f 0xaf52ae 0xaf53c9 0xb1eb1
-
Go语言interface详解
interface Go语言里面设计最精妙的应该算interface,它让面向对象,内容组织实现非常的方便,当你看完这一章,你就会被interface的巧妙设计所折服. 什么是interface 简单的说,interface是一组method的组合,我们通过interface来定义对象的一组行为. 我们前面一章最后一个例子中Student和Employee都能SayHi,虽然他们的内部实现不一样,但是那不重要,重要的是他们都能say hi 让我们来继续做更多的扩展,Student和Employe
-
golang实现unicode转换为字符串string的方法
本文实例讲述了golang实现unicode转换为字符串string的方法.分享给大家供大家参考,具体如下: 复制代码 代码如下: package main import ( "bytes" "encoding/binary" "encoding/hex" "fmt" "strings" ) func main() { str := `\u5bb6\u65cf
-
Go语言string,int,int64 ,float之间类型转换方法
(1)int转string s := strconv.Itoa(i) 等价于s := strconv.FormatInt(int64(i), 10) (2)int64转string i := int64(123) s := strconv.FormatInt(i, 10) 第二个参数为基数,可选2~36 注:对于无符号整形,可以使用FormatUint(i uint64, base int) (3)string转int i, err := strconv.Atoi(s) (4)string转in
-
go语言中的interface使用实例
go语言中的interface是一组未实现的方法的集合,如果某个对象实现了接口中的所有方法,那么此对象就实现了此接口.与其它面向对象语言不同的是,go中无需显示声明调用了哪个接口. 复制代码 代码如下: package main import ( "fmt" ) type I interface { Get() int Put(int) } type S struct{ i int } func (p *S) Get() int { return p.i } f
-
mongodb exception: $concat only supports strings, not NumberInt32解决办法
今天在用mongodb操作aggregation的时候出现这个问题,我是想格式化日期,例如"2013-10-17 04:41:37 UTC"变成"10月17日", 复制代码 代码如下: 'fdate' => { '$concat' => ['$date.month', '月', '$date.day', '日'] } 出现 exception: $concat only supports strings, not NumberInt32 原来$conca
-
关于mongoose连接mongodb重复访问报错的解决办法
具体代码如下所示: var express = require('express'); var mongoose = require('mongoose'); var router = express.Router(); var Person = mongoose.model('Person',{ id:Number, name:String }); /*新增*/ router.get('/insert', function(req, res){ var student = new Person
-
Mongodb 副本集搭建问题总结及解决办法
Mongodb 副本集搭建问题总结及解决办法 Mongodb数据库的副本集是由多台服务器组成,基中一台是主节点,其它为从节点,如果主节点宕机就自动切换到任意一个从节点.如果以前的主节点修复完成和正常运行就自动变成从节点,从节点不能查询数据.也可以在一台服务器装多个Mongodb端口不一样. 在我以往的认知中,一个系统一旦正式上线,多半不会轻易的迁移服务器,尤其是那种涉及到多个关联应用,涉及到多台硬件服务器的系统,因为这种迁移将是牵一发而动全身的. 但是,却仍然有这种情况存在,就如我这几天主要负责
-
MongoDB诡异问题之sh.stopBalancer卡住的解决方法
背景 Part1:写在最前 我们在使用MongoDB sharding集群时,会使用如下命令来管理启停Balancer: >sh.stopBalancer() 停止Balancer >sh.startBalancer() 开启Balancer Part2:背景 开启balancer后,客户反馈前端应用写入缓慢,查询超时.因此我们尝试关闭balancer,来避免chunk迁移对集群性能带来的影响. 但是在调用sh.stopBalancer的时候,发现却停不下来,sh.stopBalancer会处
-
Win10 安装 MongoDB 3.6.5 失败的问题及解决方法
MongoDB 3.6.5 2008R2Plus SSL (64 bit) Setup Wizard ended prematurely 在安装 MongoDB 的时候,出现了MongoDB 3.6.5 2008R2Plus SSL (64 bit) Setup Wizard ended prematurely的错误,原因不明,但有解决办法: 解决办法 在安装的时候不勾选 Install MongoDB Compass选项即可 总结 以上所述是小编给大家介绍的Win10 安装 MongoDB 3
-
mongodb出现id重复问题的简单解决办法
目录 背景 ObjectId 的结构 尝试 解决办法 总结 背景 今天遇到mongodb在插入数据时出现id重复错误,具体错误代码如下: duplicate key error collection: index: id dup key: { : ObjectId('59a3b9275f063c20cc8bdec7') }', 觉得奇怪 id不是自己生成的,怎么会这样呢 . 于是查了下ObjectId . ObjectId 的结构 这些是 _id 的一些主要特征的摘要: _id 是集合中文档的主
-
Navicat远程连接MongoDB最全实现方法以及报错解决
目录 MongoDB简介 MongoDB的安装 Navicat远程连接MongoDB 总结 MongoDB简介 MongoDB是一个开源.高性能.支持海量数据存储的文档型数据库. 是NoSQL数据库产品中的一种,是最像关系型数据库(MySQL)的非关系型数据库 数据存储量较大,甚至是海量 对数据读写的响应速度要求较高 某些数据安全性要求不高,可以接受一定范围内的误差 MongoDB的安装 使用docker安装MongoDB: docker pull mongo docker run --name
-
Mongodb 忘记密码的解决办法
下午刚设置的密码,当时忘记保存,晚上去吃了个晚饭回来就忘记了.研究了一会发现也不难,不过网上没有直接搜到就记录一下,按照以下步骤操作即可 操作步骤: 复制代码 代码如下: vim /etc/mongodb.conf # 修改 mongodb 配置,将 auth = true 注释掉,或者改成 false service mongodb restart # 重启 mongodb 服务 mongo # 运行客户端(
-
MongoDB在系统数据库local中无法创建用户的解决办法
前言 我们知道,MongoDB的Oplog (operations log)记录了用户的最近一段时间的操作(时间长短主要受设置的oplogSize和程序的写入更新量的影响).那么,如果其他部门(例如BI团队)需要抽取数据,从 local.oplog.rs中读取解析一个不错的选择. oplog位于local数据下面,为了将权限最小化,大家需要创建此库的权限(还可以将权限细化到集合,再次不讨论). 习惯性的,在local数据库下面创建,但是报错了. 执行脚本 db.createUser( { use
随机推荐
- PHP实现的基于单向链表解决约瑟夫环问题示例
- extjs DataReader、JsonReader、XmlReader的构造方法
- tomcat简介_动力节点Java学院整理
- java小数位的例子
- php中的常用魔术方法汇总
- 经典mysql连接查询例题
- UI Events 用户界面事件
- jquery插件treegrid树状表格的使用方法详解(.Net平台)
- 用DNSPod和Squid打造自己的CDN (七) 配置Squid
- jQuery中delegate()方法用法实例
- 浅谈$(document)和$(window)的区别
- Ubuntu部署python3.5的开发和运行环境
- Android中使用socket使底层和framework通信的实现方法
- CISCO 技术集合五
- 如何重置vue打印变量的显示方式
- vue.js中$set与数组更新方法
- Mac下部署springBoot项目到Docker中(demo)
- JS中的函数与对象的创建方式
- 浅析python3字符串格式化format()函数的简单用法
- vue-cli+iview项目打包上线之后图标不显示问题及解决方法