繁体   English   中英

使用mysql从同一数据库中的两个不同表中选择两列+在C#中使用查询输出

[英]select two columns from two different tables in the same db using mysql + use the output of query in C#

亲爱的朋友们

我想使用mysql从同一数据库中的两个不同表中选择两列,并将查询的输出设置为c#中的变量。

目前我的代码如下所示:

MySqlCommand logcmdCheck = new MySqlCommand(query, connectionCheck);

string query = "SELECT DB.table1.column1,DB.table1.column2,DB.table2.column1,DB.table2.column2,DB.table2.column3 FROM DB.table1 WHERE DB.table1.column1=?x,DB.table2 WHERE DB.table2.column1=?y";

logcmdCheck.Parameters.AddWithValue("?x",UserName);
logcmdCheck.Parameters.AddWithValue("?y",emailID);

MySqlDataReader ldr = logcmdCheck.ExecuteReader();

A = ldr[0].ToString();

B = ldr[1].ToString();

C = ldr[2].ToString();

D = ldr[3].ToString();

E = ldr[4].ToString();

错误 :MySQL查询语法错误。

请使用mysql命令帮助我执行要求。

提前致谢

苏拉杰

您将必须使用SQL Join。 http://www.w3schools.com/sql/sql_join.asp上查看 您需要在其中一个表中具有一个外键,以允许您连接到另一个表的主键。 每个好的数据库都应该使用带有外键的表来设置。

例如:

    Table 1:
          OrderNumber     Name         Order Total
          1               John Smith   10.00
          2               Sally Smith  5.00
          3               Berry Jones  25.00 

    Table 2:
          Item Number     ItemTotal    OrderNumber
          1               5.00         1
          2               5.00         1
          3               2.50         2
          4               2.50         2
          5               25.00        3

在表2中,OrderNumber是能够加入表一的外键。 因此,您的语法将是:

    SELECT * FROM table1 JOIN table2 ON table2.OrderNumber = table1.OrderNumber

这将为您提供一张表,您可以从中读取。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM