日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

mongodb 去重查询 Java,mongodb篇二:mongodb克隆远程数据库,去重查询的命令及对应java语句...

發布時間:2025/3/15 java 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mongodb 去重查询 Java,mongodb篇二:mongodb克隆远程数据库,去重查询的命令及对应java语句... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

另外附上mongodb eclipse插件地址:?http://www.jumperz.net/update/ import java.net.UnknownHostException;import com.mongodb.DB;import com.mongodb.DBCol

1.首先操作mongodb最基本命令::

show databases; ? ? ? ? ? ? ---------------------顯示全部數據庫

use 數據庫名; ? ? ? ?--------------------切換到指定數據庫

show collections; ?--------------------顯示該數據庫下的全部表

之后就可以執行相應增刪改查語句了!

2.

查詢: ?logger ?是我自己的數據庫表名

db.logger.find() ?查詢全部,數據過多的話繼續執行 it 就可以繼續顯示下一頁數據,重復再重復

db.logger.count() ? ? 查詢數量

db.logger.find({"device":"mobile"}) ? ? 查詢device是mobile的數據

指定條件下查詢:

db.logger.find(

{"device":"mobile","datetime":{"$gt":1384185600000,"$lt":1384271999000}}

);

查詢指定device是mobile,時間在1384185600000到1384271999000之間的logger,這里的數字是時間類型對應的毫秒數,1384185600000對應“2013-11-12 00:00:00”,1384271999000對應2013-11-12 23:59:59,也就是11月12號這一天

db.logger.find(

{"device":"mobile","datetime":{"$gt":1384185600000,"$lt":1384271999000}}

).count();

后面加上count,查詢上面集合的數量

去重查詢:

db.runCommand(

{"distinct":"數據庫表名","key":"要去重的屬性名","query":{“查詢語句”}}

);

返回的是去重的集合,在query后面的查詢語句中放入自己想加入的條件即可,就像上面指定條件下查詢:的find()里面指定的查詢語句{"device":"mobile","datetime":{"$gt":1384185600000,"$lt":1384271999000}}

db.runCommand(

{"distinct":"數據庫表名","key":"要去重的屬性名","query":{“查詢語句”}}

).values.length; 后面加上 .values.length,返回去重查詢后的數量

3.克隆遠程數據庫:

db.copyDatabase("目標數據庫","我自己的數據庫名","ip地址:端口號")

就像這樣

db.copyDatabase("web_logger","MyDB","110.110.10.110:27012")

執行后就可以把ip是110.110.10.110的遠程數據庫web_logger拉到本地mongodb數據庫內上一篇我們講了MongoDB 的命令入門初探,本篇blog將基于上一篇blog所建立的數據庫和表完成一個簡單的Java MongoDB CRUD Example,利用Java連接MongoDB數據庫,并

對應的java語句:

連接mongodb數據庫:

public DBCollection getCollection(String tableName) {

DBCollection collection = null;

try {

Mongo mongo = new Mongo("XXXX.XXX.XX.XXX",27017);

DB db = mongo.getDB("web_logger");

collection = db.getCollection(tableName);

System.out.println("已連接"+tableName+"表");

} catch (UnknownHostException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return collection;

}

傳入表名,返回該表的連接!

查詢指定條件的數據:

DBObject query = new BasicDBObject();

query.put("device","web");

query.put("city","杭州");

query.put("datetime", new BasicDBObject("$gte",1384185600000).append("$lte",1384271999000));

DBCollection collection = 連接自己定義的數據庫表.

之后幾種情況的查詢

1.查詢數量

long num = collection.count(query);

2.查詢去重數量

long num = collection.distinct("ip",query).size();

3.查詢集合

List list = new ArrayList();

DBCurson curson = collection.find(query);

Gson gson = new Gson();

while(curson.hasNext()){

DBObject element = curson.next();

Logger logger =?gson.fromJson(element.toString(), Logger.class);

list.add(logger);

}

return list;

4.查詢去重集合:

List list = collection.distinct("ip",query);

OVER!簡單地用到了一些,暫時記著方便以后回憶

對了,貼上用到的jar包

org.mongodb

mongo-java-driver

2.11.3

com.google.code.gson

gson

2.2.4

org.springframework.data

spring-data-mongodb

1.0.0.M5

1.使用eclipse創建一個maven項目開操作mongodb數據庫。pom.xml文件如下:

總結

以上是生活随笔為你收集整理的mongodb 去重查询 Java,mongodb篇二:mongodb克隆远程数据库,去重查询的命令及对应java语句...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。