asp.net C#怎么实现对同一数据库的两个表的连接, 请给出类似下列语句的代码

2025-01-06 15:25:43
推荐回答(4个)
回答1:

1. 首先,这两个表要有关系(比如主外);
2. 将有关系的键作为条件添加到where中;
如:
表t_message_info(c_id(primary key),c_name,c_type_id)
表t_message_type(t_id,t_name)
select * from t_message_info m,t_message_type t where m.c_type_id = t.t_id;
或者可以使用子查询:
select m.c_id, m.c_name, (select t.t_name from t_message_type t where t.t_id = m.c_type_id) from t_message_info m;

子查询的执行效率不高,推荐使用表连接

回答2:

DataTable dt1=new DataTable();
SqlDataAdapter sdr1=new SqlDataAdapter(".....");
sdr1.Fill(dt1);
DataTable dt2=new DataTable();

SqlDataAdapter sdr2=new SqlDataAdapter(".....");

sdr2.Fill(dt2);

我直接手写的代码,可能有误,思路就是这样,你想查询多少个表都行,只要保持数据的表达对象不同即可。
我看你代码后面要绑定GridView控件的数据源,这个没有影响的,
你可以再拖一个GridView2进来绑定一下dt2的数据,可以看到2个GridView显示的数据都是按照你sql查询出来的结果。

回答3:

SQL语句本身就能实现对两个表的查询

select A.*,B.* from A表 ,B表 where A.ID=B.ID

只需要一次交互就能取出需要的数据

回答4:

用 sql语句中的 内连 外连 就可以解决了