sql >> Database teknologi >  >> NoSQL >> MongoDB

Ruby Mongo Driver:Hvordan ser man efter datointervaller?

MongoMapper

Du bør kunne bruge MongoMappers forespørgselsoperatorer. Antag, at du har en "Bruger"-model med en "created_on"-dato, du kan bruge denne til at få navnene. (Jeg tror, ​​at MongoDB bruger UTC Times til at gemme alle dato/tidsobjekter):

initial_date = Time.utc(2011, 5, 1) # 2011-05-01 00:00:00 UTC
@users = User.where(:created_on => {:$gte => initial_date, :$lte => Time.now.utc})
@users.each do |user|
  puts user.name
end

Ruby Mongo Driver

initial_date = Time.utc(2011, 5, 1) # 2011-05-01 00:00:00 UTC
@conn = Mongo::Connection.new
@db = @conn['my_db']
@collection = @db['users']
@users = @collection.find(:created_on => {:$gte => initial_date, :$lte => Time.now.utc})
@users.each do |user|
  puts user['name']
end



  1. mongodb - Find dokument med nærmeste heltalsværdi

  2. Opret en samling i MongoDB

  3. Fjern dubletter fra MongoDB 4.2-databasen

  4. Hvordan får man data fra array i mongoose?