 <p>You need to put the name of the field into square brackets.</p> <p>So change...</p> <pre><code>ON e.EEO-1Class = jt.EEO-1Class </code></pre> <p>Into</p> <pre><code>ON e.[EEO-1Class] = jt.[EEO-1Class] </code></pre> <p>If your field or table name contains just alphanumeric characters (ie A-Z and 0-9) and the underscore <code>_</code> character, then you can use it without square brackets (<code>[</code> and <code>]</code>).</p> <p>But as soon as you have a different characters in there (and one that can easily be confused by SQL server, such as <code>-</code>) then you need to place the field/table into square brackets.</p> <p>However, what I would recommend above everything else is that you only ever use alphanumeric characters (and the underscore <code>_</code> character) for your field and table names, as it is considered better practise, and will remove this type of thing happening again for you</p>