Как уже упоминалось, идеальным способом сделать это будет сохранение дополнительной строки для каждой комбинации DName/Boundary_Dist. Самый простой способ сделать со структурой этой простой, чтобы просто изменить свой первичный ключ:
CREATE TABLE District_Info(
Dname VARCHAR2(20) primary key,
Boundary_dist VARCHAR2(20) primary key);
Если вы собираетесь нужны другие данные в этой таблице, имеющей 1: 1 корреляции в районе, вы бы лучше расщепление BoundayDist в отдельную таблицу:
CREATE TABLE District_Info(
Dname VARCHAR2(20) primary key,
Other_info VARCHAR2(20)
);
CREATE TABLE District_Boundary(
Dname VARCHAR2(20) primary key,
Boundary_dist VARCHAR2(20) primary key);
Если вы действительно настаиваете на хранение более, что одно значения для каждой строки, вы можете использовать определенный пользователем типа данных:
create type varchar_20_list as table of varchar2(20);
CREATE TABLE District_Info(
Dname VARCHAR2(20) primary key,
Boundary_dist varchar_20_list);
общий подход в реляционной да tabases - это «одни данные, одна строка», «много данных, много строк». Вероятно, вам придется пересмотреть структуру таблиц. –
Почему это должно быть 1 столбец из 1 строки? Почему бы не сохранить 1 border_dist для каждой строки? Если вы ДОЛЖНЫ, вы можете попробовать использовать вложенные таблицы, но сначала подумайте об этом ... – tbone