Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 171613
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T13:01:08+00:00 2026-05-11T13:01:08+00:00

ActiveRecord objects of the class ‘Location’ (representing the db-table Locations) have the attributes ‘url’,

  • 0

ActiveRecord objects of the class ‘Location’ (representing the db-table Locations) have the attributes ‘url’, ‘lat’ (latitude) and ‘lng’ (longitude).

Lat-lng-combinations on this model should be unique. The problem is, that there are a lot of Location-objects in the database having duplicate lat-lng-combinations.

I need help in doing the following

  1. Find objects that share the same lat-lng-combination.
  2. If the ‘url’ attribute of the object isn’t empty, keep this object and delete the other duplicates. Otherwise just choose the oldest object (by checking the attribute ‘created_at’) and delete the other duplicates.

As this is a one-time-operation, solutions in SQL (MySQL 5.1 compatible) are welcome too.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-11T13:01:08+00:00Added an answer on May 11, 2026 at 1:01 pm

    If it’s a one time thing then I’d just do it in Ruby and not worry too much about efficiency. I haven’t tested this thoroughly, check the sorting and such to make sure it’ll do exactly what you want before running this on your db 🙂

    keep = [] locations = Location.find(:all)  locations.each do |loc|   # get all Locations's with the same coords as this one   same_coords = locations.select { |l| l.lat == loc.lat and \                                        l.lng == loc.lng }   with_urls = same_coords.select { |l| !l.url.empty? }    # decide which list to use depending if there were any urls   same_coords = with_urls.any? ? with_urls : same_coords    # pick the best one   keep << same_coords.sort { |a,b| b.created_at <=> a.created_at }.first.id end  # only keep unique ids keep.uniq!  # now we just delete all the rows we didn't decide to keep locations.each do |loc|   loc.destroy unless keep.include?( loc.id ) end 

    Now like I said, this is definitely poor, poor code. But sometimes just hacking out the thing that works is worth the time saved in thinking up something ‘better’, especially if it’s just a one-off.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 78k
  • Answers 78k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • added an answer As far as I know, django doesn't have a native… May 11, 2026 at 3:53 pm
  • added an answer Cross-platform libraries that are free for commercial (or non-commercial) applications… May 11, 2026 at 3:53 pm
  • added an answer JAXB is definitely the solution. Why? Well, it's inside the… May 11, 2026 at 3:53 pm

Related Questions

ActiveRecord objects of the class 'Location' (representing the db-table Locations) have the attributes 'url',
I have a sequence of ActiveRecord objects that I want to cascade destroy but
I am trying to create an ActiveRecord object via a JSON request. However the
I'm trying to verify if a schema matches the objects I'm initializing. Is there
I've been a web developer for some time now, and have recently started learning

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.