title: Split Address column into multiple columns
body: <p>I have an address field where all the address details are held in one column, I want to create some labels so need to be able to split the address into the correct format.
  Example :-</p>
  
  <pre><code> ADDRESS 
  PIKE ROAD, AL 36064-3401
  MEMPHIS TN 38104-5802 
  JAMAICA PLAIN MA 02130-2337
  </code></pre>
  
  <p>Need to split this column into </p>
  
  <pre><code>    City      State     Zip
    PIKE ROAD    AL       36064-3401
   MEMPHIS        TN       38104-5802
  JAMAICA PLAIN   MA       02130-2337
  </code></pre>
  
  <p>I am able to extract Zip code using </p>
  
  <pre><code>STUFF(Address, 1, Len(Address) +1- CHARINDEX(' ',Reverse(Address)), '') from abx
  </code></pre>
  
  <p>but I am having trouble in extracting city and state. Is it possible to split the string based on the length of words, i.e. all the Characters before the length of the word (2) goes in City and all the words with 2 characters goes in state example: - Pike Road goes into the City and AL (length is 2) in the state?</p>