I am trying to figure out the best way to calculate the distance for each student from the school they attend. We have 2 shapefiles - the student locations with a field identifying the school they attend, and the school point file.

The best we could think of was to use the Proximity toolbox – but then we would need to do each set of students for each school individually I think.

  • A simple nested query, with one school point for each student should give you student-point and school-point, from which you can calculate distance
    – Vince
    Commented Aug 15, 2014 at 20:24
  • That sounds like the right place to start. I recommend reviewing the help of each tool there (or at least the ones you think have the most likely names) and then trying them out. If you think something should work and it appears not to then that should let you revise your question here into something more specific.
    – PolyGeo
    Commented Aug 15, 2014 at 20:26
  • Where would I add the nested query? Currently the only queries I have been using are in the Definition Query in the Layer Properties dialogue box
    – yope
    Commented Aug 15, 2014 at 20:28

1 Answer 1


If you work with effective distances (along roads), you need some network analyst and iteratively select each school and the students from those schools (with Python or model builder)

If you work with bird flight distance, as an alternative to the method proposed by Vince, you could compute the XY coordinates of your schools and of your students, then you make a table join on your student dataset in order to get the XY of their school, then you use the field calculator to find out the distance (sqrt((xschool - xstudent)² + (yschool - y student)²) )

  • I like and had not considered your Field Calculator using hypotenuse solution
    – PolyGeo
    Commented Aug 15, 2014 at 23:07
  • We performed the XY coordinate calculation for a quick and dirty analysis, thanks much.
    – yope
    Commented Aug 18, 2014 at 18:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.