我有两个表,请问怎么把两个表捆到一个DataGrid中
表名P1 和 P2, 两个表里都有一个ID字段,查询时用输入ID得到结果目前我只会这样
string s = "select * from p1,p2";
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(s,myconn);
da.Fill(ds,"Table");
DataGrid1.DataSource = ds.Tables["Table"].DefaultView;
DataGrid1.DataBind();但是得出的结果不是想要的, 表和表串行了,同一条记录变成了好几行我想要这种结果是,在控件里输入ID后,只显示一条记录
p1.id p1.A p1.B p2.X p2.y
1001 5 7 8 11
请大家帮我写个简单的代码,谢谢了
表名P1 和 P2, 两个表里都有一个ID字段,查询时用输入ID得到结果目前我只会这样
string s = "select * from p1,p2";
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(s,myconn);
da.Fill(ds,"Table");
DataGrid1.DataSource = ds.Tables["Table"].DefaultView;
DataGrid1.DataBind();但是得出的结果不是想要的, 表和表串行了,同一条记录变成了好几行我想要这种结果是,在控件里输入ID后,只显示一条记录
p1.id p1.A p1.B p2.X p2.y
1001 5 7 8 11
请大家帮我写个简单的代码,谢谢了
FROM p1 INNER JOIN
p2 ON p1.id = p2.id
WHERE (p1.id = "输入ID")或者SELECT p1.id, p1.A, p1.B, p2.X, p2.Y
FROM p1 INNER JOIN
p2 ON p1.id = p2.id
WHERE (p2.id = "输入ID")
将导致用户输入ID1002时,P1表查不出来,因为P2表里没有这个ID记录大家帮帮我 两个表P1,P2里都有不同的ID值,我要的结果是用户输入ID号后,得到一条记录如 p1表和p2表都有id值 1001时p1.id p1.A p1.B p2.X p2.y
1001 5 7 8 11
-------------------------------------------------------- p1表有id值 1002时 2表id没有这个值时p1.id p1.A p1.B p2.X p2.y
1002 5 空 空 空
FROM p1 LEFT OUTER JOIN
p2 ON p1.id = p2.id
WHERE (a.id = '1002')