У меня есть следующие 2 запроса в приложении Windows на С# из таблиц базы данных на разных серверах SQL. Мне нужно получить Order, LineNo и Quantity из одной таблицы, а также цену для этого заказа и номер строки в другой таблице на другой таблице сервера, чтобы выполнить цикл и вставить результаты в новую таблицу.
Все работает нормально, за исключением того, что я не могу получить это значение цены для каждого линейного ордера, поскольку оно находится в другой таблице.
Как я могу объединить два стола? будет ли работать что-то вроде ниже?
Обратите внимание на переменную в цикле, чтобы получить цену
decimal decPrice = (decimal)dsqry2.Tables[0].Rows[intCountOrders]["Price"];
из другого набора данных
string strQuery1 = "SELECT ORDER, LINENO, QUANTITY FROM ORDERS";
SqlDataAdapter qry1Adapter = new SqlDataAdapter(strQuery1, sqldb);
DataSet dsqry1 = new DataSet();
qry1Adapter.Fill(dsqry1);
string strQuery2 = "SELECT ORDER, LINENO, PRICE FROM PRICES";
SqlDataAdapter qry2Adapter = new SqlDataAdapter(strQuery2, sql2db);
DataSet dsqry2 = new DataSet();
qry2Adapter.Fill(dsqry2);
if (dsqry1.Tables[0].Rows.Count > 0)
{
int intCountOrders = 0;
while (intCountOrders < dsqry1.Tables[0].Rows.Count)
{
string strPartNo = dsqry1.Tables[0].Rows[intCountOrders]["Order"].ToString();
string strLineNo = dsqry1.Tables[0].Rows[intCountOrders]["LineNo"].ToString();
int intQuantity = (int)dsqry1.Tables[0].Rows[intCountOrders]["Quantity"];
decimal decPrice = (decimal)dsqry2.Tables[0].Rows[intCountOrders]["Price"];