how to view colmn names of joined tables Is there a way to make this query:

SELECT * FROM food
JOIN conditions ON food.id = conditions.id
JOIN flavors ON food.id = flavors.id 
JOIN symptoms ON food.id = symptoms.id
JOIN tags ON food.id = tags.id 
WHERE 1


show column names instead of 0-infinity

To be a little more clear, I need the column names from the tables (flavors,conditions,symptoms, and tags) to show up instead of a numerical value. 

The above query gives me this but far longer:

 9 =&gt; string '15.012820512821' (length=15)
 10 =&gt; null
 11 =&gt; null
 12 =&gt; string '17.846153846154' (length=15)
 13 =&gt; null
 14 =&gt; null
 15 =&gt; string '5.3846153846154' (length=15)
 16 =&gt; null
 17 =&gt; null


and the column names those numbers represent:

 0 =&gt; 
    array (size=1)
      0 =&gt; string 'id' (length=2)
  1 =&gt; 
    array (size=1)
      0 =&gt; string 'name' (length=4)
  2 =&gt; 
    array (size=1)
      0 =&gt; string 'addadhd' (length=7)
  3 =&gt; 
    array (size=1)
      0 =&gt; string 'alzheimers' (length=10)


In phpmyadmin I can see that  9 =&gt; string '15.012820512821' corresponds to addadhd, but 9 != 2, so I can't just match those values. If I had the column name instead of 9, I could easily match the value. I'm very frustrated.
Just putting this point out first and foremost, you should not use select *, you should declare the columns you want, even if you want everything you should have everything listed one by one so any column additions later on don't potentially screw up other functions.

Now that's over

This will get you the column names, but I can't guarantee the order that you will be pulling the data out, they will be listed here generally in the order that the tables / columns were created, which will be potentially be different to what you are getting in your initial query,

SELECT column_name
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_schema =  'DatabaseName'
AND table_name
IN (
'food', 'conditions', 'flavors', 'symptoms', 'tags'
)


you could replace the select with

SELECT CONCAT( table_name,  '.', column_name,  ', ' ) 


and then copy the output to the select statement (remember to remove the final,) which then allows you to pick the exact order you want everything to come out in which is a win under you're not using select * and a win under you get to choose which columns are where