Separating conserns of general select behaviour and column selection