Hola que tal, bueno yo cuando ocupo mostrar la informacion en un combo dentro de un DataGridView, la obtengo mediante una lista y esta la anexo al DataSources del Grid.
Código C#:
Ver originalColumnaComboBox.DataSource = AsignarValorCombo.funcion();
ColumnaComboBox.Name = "Seccion";
ColumnaComboBox.DisplayMember = "DescripcionSeccion";
ColumnaComboBox.ValueMember = "Seccion";
m_Grid.Columns.Add(ColumnaComboBox);
Y con esto al obtener los valores, automaticamente se obtienen.
Si lo quieres hacer desde SQL, se me ocurre que en una temporal tengas el campo y por medio de un CASE WHEN hagas la actualizacion a ese campo