title: SQL IsNumeric Returns True but SQL Reports 'Conversion Failed'
body: <p>Assuming the following data:</p>
  
  <pre><code>Column1 (data type: varchar(50))
  --------
  11.6
  -1
  1,000
  10"    
  Non-Numeric String
  </code></pre>
  
  <p>I have a query, which is pulling data from this column and would like to determine if the value is a number, then return it as such in my query.  So I am doing the following</p>
  
  <pre><code>SELECT CASE
         WHEN IsNumeric(Replace(Column1, '"', '')) = 1 THEN Replace(Column1, '"', '')
         ELSE 0
     END AS NumericValue
  </code></pre>
  
  <p>SQL is reporting back:  </p>
  
  <blockquote>
    <p>Conversion failed when converting the varchar value '11.6' to data type int.</p>
  </blockquote>
  
  <p>Why?  I have also tried to force cast this:</p>
  
  <pre><code>SELECT CASE
         WHEN IsNumeric(Replace(Column1, '"', '')) = 1 THEN cast(Replace(Column1, '"', '') AS float)
         ELSE 0
     END AS NumericValue
  </code></pre>
  
  <p>And I got:  </p>
  
  <blockquote>
    <p>Error converting data type varchar to float.</p>
  </blockquote>