IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> php7 mongodb 使用(四)集合的创建删除改名操作 -> 正文阅读

[大数据]php7 mongodb 使用(四)集合的创建删除改名操作

使用的mongodb操作类 请参考以前的文章
php7 mongodb 使用(二)原生驱动 增删改查和统计
?

首先 查询集合
$m_model= new MongoClass();
$cmd=['listCollections' => 1,'nameOnly'=>true];
$res=$m_model->query('',$cmd,[],'command');
返回当前库下的所有集合。

如果是只想获得test前缀的集合
$cmd=['listCollections' => 1,'filter'=>['name'=>['$regex'=>'^test']],'nameOnly'=>true];
$regex 对应的就是正则表达式
?

创建一个集合
$cmd=['create' => 'test_001'];
$res=$m_model->query('',$cmd,[],'command');
如果要创建一个固定的集合
$cmd=['create' => 'test_002','capped'=>true,'size'=>10 * 1024,'max'=>10];
固定大小(封顶)集合是一种磁盘容量或者文档数量固定的特殊集合。当集合“满了”的时候,最老的文档就会被新的文档代替。比如你需要保留一定数量的日志,不用担心它们占用过多的空间。

给集合创建索引
$cmd=["createIndexes" => "test_002","indexes" => [["name" => "k1","key"=> ["k1" => 1],"ns" =>"db.test_002"]]];
$m_model->query('',$cmd,[],'command');


删除集合
$cmd=["drop" => "test_002"];
删除集合的时候索引也会同时删除

重命名集合
$cmd=["renameCollection" => 'db.test_001',"to" => "db.test_002",'dropTarget'=>true];
使用这个命令的前提是你的mongodb连接必须要先连接到admin数据库才能执行成功。
一般情况下你可能没有这个权限。
有些文档上说改名的时候索引对应的集合不会自动变,需要重新创建索引。
经过我实际测试索引是会自动跟随变动,这可能是php7的优化改进吧。
切换连接有可能会干扰其他连接对集合的读写,使用要慎重。

统计一个集合下的数据量
$cmd=["count" => $table,"query" =>$filter];
?query里面允许条件搜索? 类似mysql 的 count

另一种更快的方式是直接查看集合信息
$cmd=['collStats'=>'test_001'];
这中方式不会去遍历集合文档,肯定更快。

?

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-24 14:59:55  更:2021-10-24 15:00:32 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 3:35:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码