1. A method for detecting one or more subject columns of a table, the method comprising: selecting a specified number of columns from the table as candidate subject columns, each candidate subject column being a candidate for a true subject column of the table, each candidate subject column including a plurality of values; for each candidate subject column: determining a co-occurrence for values in the candidate subject column, including determining how often values in the candidate subject column also occur in true subject columns in a plurality of other tables; calculating a score for the candidate subject column based on the determined co-occurrence, the calculated score indicating a likelihood of the candidate subject column being a true subject column; and classifying the candidate subject column as one of: a true subject column of the table or a non-subject column of the table based on the calculated score for the candidate subject column.