合并mysql中两个数据集的结果

时间:2013-04-16 07:47:31

标签: c# asp.net mysql

我有两个表,table1table2。我想从column1table1 column1检索table2。然后组合这两个结果并在网格视图中显示为单独的列。这是我的代码:

string query4 = "select tablename from table1 where tid='1'";
MySqlCommand command4 = new MySqlCommand(query4, connection);

DataSet ds = new DataSet();
adapter.SelectCommand = command4;
adapter.Fill(ds);

GridView1.DataSource = ds;
GridView1.DataBind();
string query5 = "select fname from table2 where id='1'";
MysqlCommand command5 = new MySqlCommand(query5, connection);

DataSet ds2 = new DataSet();
adapter.SelectCommand = command5;
adapter.fill(ds2);

Gridview1.DataSource = ds;

这只给我table1值,但我希望在单个网格视图中显示来自table1table2的两列。

3 个答案:

答案 0 :(得分:1)

在MSDN上快速搜索会显示以下文章http://msdn.microsoft.com/en-gb/library/803bh6bc.aspx

使用DataSet.Merge()方法。

答案 1 :(得分:0)

http://dev.mysql.com/doc/refman/5.0/en/join.html INNER JOIN是你的朋友,

SELECT
    table1.tablename, 
    table2.fname 
FROM table1 
INNER JOIN table2 
    ON table2.id = table1.tid 
WHERE table1.id = 1

这将在一个查询中获取所有数据

答案 2 :(得分:0)

你可以用两种方法做到这一点。第一个来自MySQL查询:

string query6 = "select tablename AS value from table1 where tid='1' UNION select fname from table2 as value where id='1'";

或使用DataSets

将您的DataSet合并到一个DataSet.Merge();