title: MySQL subquery in select, return multiple columns
body: <p>I am working with 2 tables. <code>location</code> and <code>us_zipcodes</code>.</p>
  
  <p><code>location</code> contains user coordinates and travel speed.</p>
  
  <p><code>us_zipcodes</code> contains all cities, their zipcodes, and coordinates in the US.</p>
  
  <p>The goal here is to return the users latitude, longitude, speed, and nearest city.</p>
  
  <p>In my select, I am trying to return 2 columns from <code>us_zipcodes</code> in a select subquery. I understand one might recommend a join, but my circumstances do not allow an <code>ON</code>.</p>
  
  <p>The subquery selects the city based on the users coordinates that are closest to the city's coordinates in the <code>us_zipcodes</code> table.</p>
  
  <p>I am looking to know if what I want to do is possible, and if so, the correct syntax.</p>
  
  <p>My attempt is below. Thank you in advance.</p>
  
  <pre><code>SELECT
      l.lat,
      l.lng,
      l.speed
      (
          SELECT
              CONCAT(city, ' ', state_abrv) AS nearest, 
              (
                  3959 * 
                  acos( 
                      cos( radians( l.lat ) ) * 
                      cos( radians( lat ) ) * 
                      cos( 
                          radians( lng ) - 
                          radians( l.lng ) 
                      ) + 
                      sin( radians( l.lat ) ) * 
                      sin( radians( lat ) ) 
                  ) 
              ) AS distance
          FROM
              us_zipcodes
          ORDER BY
              distance ASC
          LIMIT 0, 1
      ) AS nearest, distance
  FROM
      location AS l
  WHERE
      l.userID = :userID
  </code></pre>
  
  <p>EDIT: My table structure is as shown.</p>
  
  <p>TABLE: <code>location</code></p>
  
  <pre><code>ID      |       lat         |       lng         |       speed       |       userID  
  ___________________________________________________________________________________
  1       |       55.159399   |       -74.98976   |       35          |       1       
  2       |       45.168399   |       -52.56476   |       45          |       2       
  3       |       64.593399   |       -64.32576   |       55          |       3       
  4       |       98.193399   |       -72.81176   |       65          |       4       
  </code></pre>
  
  <p>TABLE: <code>us_zipcodes</code></p>
  
  <pre><code>ID      |       city        |       state_abrv      |       lat     |       lng
  ______________________________________________________________________________________
  1       |       Foo City    |       MI              |       45.3265 |       -81.98747
  2       |       Bar City    |       AK              |       65.3265 |       -65.98747
  3       |       Fake City   |       FL              |       25.3265 |       -75.98747
  4       |       Smith City  |       MI              |       64.3265 |       -89.98747
  </code></pre>