Using the Camera Data Node In the blender manual the options for camera data node are explained like this:


  View Vector
  
  A Camera space vector from the camera to the shading point.
  
  View Z Depth
  
  How far away each pixel is from the camera
  
  View Distance
  
  Distance from the camera to the shading point




So, what is the shading point? How is each of these options different form the other, and in which cases should one be used instead of the other?
Shading Point

is the nearest point of intersection of the camera ray with a visible object, which the render engine is currently calculating the color for (these calculations are referred to as shading)



The real View Vector

it is a vector (or a ray) in the camera space, starting from the center of the camera (or the view) and reaching the shading point 





View Vector

it is a normalized view vector (magnitude = 1 or unit vector) in the camera space, starting from the center of the camera (or the view) and pointing at the shading point (it doesn't necessarily reach it )





View Z Depth


it is the Z component of the view vector (the non normalized)
it is the shortest distance from the shading point to the camera's XY plane (the is not normalized Z-depth, it is not from 0 to 1)






View Distance

it is the magnitude of the non normalized view vector, or simply the distance from the shading point to the camera's center 





where to use each one: well you know enough now to decide where to use them!