title: How does the column system table (sys.columns, sys.all_columns, etc.) describe itself?
body: <p>I noticed in SQL Server 2008 that the sys.all_columns table includes its own columns. Hows is that possible? It seems like a chicken/egg problem -- how can SQL Server determine the columns of sys.all_columns without first reading sys.all_columns, which requires knowing what the columns of that table are?</p>
  
  <p>Also, is this common? Do other database systems do this? </p>