title: Why not "Invalid column name XYZ" error in subquery; although column name is not in subquery table?
body: <p>When I run this query</p>
  
  <pre><code>SELECT CustomerId FROM Stocks.dbo.Suppliers
  </code></pre>
  
  <p>It gives me this error. Invalid column name 'CustomerId'. This error is valid as there is no column CustomerId in Suppliers table; but when I use same query in subquery it does not give any error E.g.</p>
  
  <pre><code>SELECT * 
    FROM SomeOtherDb.dbo.Customer 
   WHERE CustomerId In( SELECT CustomerId 
                          FROM Stocks.dbo.Suppliers)
  </code></pre>
  
  <p>Here I am expecting same error "Invalid column name" but query runs without any error.</p>
  
  <p>Fully qualified name is just convention both dbs are on same server. </p>
  
  <p>CustomerId does exists in SomeOtherDb.dbo.Customer table but not in subquery.</p>
  
  <p>Why is this behavior? Is this something with subquery?</p>
  
  <p>Thanks.</p>