#sql #python-3.x #join
Вопрос:
У меня есть две таблицы без уникального идентификатора. Вот как это выглядит:
Table 1 -
case_id Family_Number Family_Description
101 FG55 Camellia_14_Pro
203 FOAF DVD Tracker
509 FAD6 Laserjet Printer X100
Table 2 -
Family_Number Family_Description GoG_Description Hierarchy_Level
FG55 Camellia_14_Pro Computron_14 2
FG55 Camellia_14_Pro Canary_14 3
FG55 Camellia_14_Pro Delta_14 4
FG55 Camellia_14_Pro Camellia_14 0
Я хочу объединить эти таблицы, чтобы каждый идентификатор case_id мог идентифицировать себя с уникальным уровнем иерархии. Я пробовал внутренние, внешние, левые и правые соединения, но не получаю требуемого результата. Он просто определил некоторый случайный уровень иерархии для всех случаев. Я попытался выполнить перекрестное соединение и объединение, но даже это не сработало, так как это дает нулевые значения для уровня иерархии.
Комментарии:
1. Пожалуйста, предоставьте достаточно кода, чтобы другие могли лучше понять или воспроизвести проблему.
2. Пожалуйста, отформатируйте свои таблицы так, чтобы они были удобочитаемыми, а также предоставьте результат, который вы ожидаете увидеть, основываясь на ваших исходных данных
3. Я не понимаю, в чем проблема. Ваша проблема в том, что в таблице 2 нет идентификатора case_id? Вместо этого существует Family_Number Family_Description, который вы можете использовать для объединения. Но «каждый идентификатор case_id может идентифицировать себя с уникальным уровнем иерархии»? Похоже, что для каждого идентификатора case_id не существует уникального уровня иерархии. Разве для case_id 101, который вы показываете, не существует четырех разных уровней иерархии? Или я неправильно истолковываю ваши таблицы? Мне кажется, что вы просто хотите присоединиться к таблицам и отсортировать их по идентификатору случая и уровню иерархии. Пожалуйста, добавьте примеры данных для другого идентификатора case_id и покажите ожидаемый результат.