Сравнение таблиц по столбцам - MySQL

Узнай цену своей работы

Формулировка задачи:

Есть две таблицы вида как на фото. Требуется во второй таблице найти значение совпадающие с первой по ord_id и marka столбцы обоих таблиц скомпоновать в одну. Помогите, пожалуйста, как это сделать?

Решение задачи: «Сравнение таблиц по столбцам»

textual
Листинг программы
//Создаю 2 таблицы с 4-мя колонками
            DataSet ds = new DataSet("DB");
            DataTable dt1 = new DataTable("DT1");
            DataTable dt2 = new DataTable();
 
            DataColumn dc1 = new DataColumn("Id", typeof(System.Int32));
            DataColumn dc2 = new DataColumn("Col1", typeof(System.String));
            DataColumn dc3 = new DataColumn("Col2", typeof(System.String));
            DataColumn dc4 = new DataColumn("Col3", typeof(System.String));
 
            dt1.Columns.AddRange(new[] { dc1, dc2, dc3, dc4 });
            dt2 = dt1.Clone();
            dt2.TableName = "DT2";
            ds.Tables.AddRange(new[] { dt1, dt2 });
 
            dt1.Rows.Add(1, "aa", "bb", "cc");
            dt1.Rows.Add(2, "bb", "cc", "dd");
            dt1.Rows.Add(3, "cc", "dd", "ee");
            dt1.Rows.Add(4, "dd", "ee", "ff");
 
            dt2.Rows.Add(1, "aa", "bb", "cc");
            dt2.Rows.Add(2, "bb", "cc", "dd");
            dt2.Rows.Add(4, "dd", "ee", "ff");
            dt2.Rows.Add(5, "aa", "bb", "cc");
 
            //Делаю LINQ запрос на объединение
            var result = dt1.AsEnumerable().Join(dt2.AsEnumerable(), 
                (x) => x[0].ToString() + x[1].ToString(), 
                (x) => x[0].ToString() + x[1].ToString(), 
                (x, y) => new { Col1 = x[0], Col2 = x[1], Col3 = x[2], Col4 = x[3], Col5 = y[2], Col6 = y[3] });
 
            //Вывожу результат
            foreach (var item in result)
            {
                Console.WriteLine($"{item.Col1}\t{item.Col2}\t{item.Col3}\t{item.Col4}\t{item.Col5}\t{item.Col6}");
            }

Объяснение кода листинга программы

  1. Создаются две таблицы (dt1 и dt2) с четырьмя столбцами каждая.
  2. Заполняются данными.
  3. Делается LINQ запрос на объединение таблиц по двум столбцам.
  4. Результат выводится на консоль.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.9 из 5
Похожие ответы