您好我有2个SQL表,我想合并在datagridview
中同时查看它们。通过将它绑定到数据集,我已经可以将其设置为查看一个,但是如何根据两个表包含的公共ID号(例如)合并这两个?
当前的datagridview填充代码(该函数被提供一个空的,新的DataTable):
public void populateSingleDataGridView(DataTable dt, DataGridView dg, string SN_DB_Name)
{
string selectProgramString = "select * from " + SN_DB_Name;
SqlDataAdapter sqlDataAdaptor = new SqlDataAdapter(selectProgramString,connectionString);
dt.Locale = System.Globalization.CultureInfo.InvariantCulture;
sqlDataAdaptor.Fill(dt);
dg.DataSource = dt;
}
答案 0 :(得分:2)
您可以将两个表连接在一起:
select table1.Field1 as GridColumn1, table2.Field2 as GridColumn2
from table1
inner join table2
on table1.CommonId = table2.CommonId
如果您希望保持当前代码不变,则可以选择创建一个视图,例如
create view GridData
as
select table1.Field1 as GridColumn1, table2.Field2 as GridColumn2
from table1
inner join table2
on table1.CommonId = table2.CommonId
然后您可以将视图名称传递给SN_DB_Name。
注意:此选项将强制您为具有联接的任何查询创建视图。恕我直言,更好的选择是传递一个完整的SQL字符串。
祝你好运答案 1 :(得分:0)
//尝试在查询中使用别名 //喜欢这个
从YourTable1 a,YourTable2 b中选择a.ID_number,b.Column1,b.Column2 其中a.ID_number = b.ID_Number