@Egoshka

Как объединить 3 таблицы таблицы в PostgreSQL?

Есть 3 таблицы. Numbers, Drivers и Cars. (Номера, Водители и Машины).
Как связать таблицы чтобы Один Водитель мог иметь несколько(рандомное кол-во) машин, а номер присваивался только к одной машине? И вывести эту таблицу соответственно в одну.

Таблица Drivers
CREATE TABLE drivers
(
    id_driver SERIAL NOT NULL PRIMARY KEY,
    name_driver VARCHAR(40) NOT NULL, 
    telephone BIGINT NOT NULL
    
);
 
INSERT INTO drivers 
VALUES
(1, 'Пахомов Олег Матвеевич',   '769159912553'),
(2, 'Иванова Милана Ярославовна',   '73930152930'),
(3, 'Смирнова Елизавета Марковна', '700957178688'),
(4, 'Филатов Тимофей Дмитриевич',   '79013782073'),
(5, 'Михайлов Андрей Владимирович',   '7265706791'),
(6, 'Дроздов Максим Артёмович',   '77330146148'),
(7, 'Матвеев Пётр Львович',   '785613586202'),
(8, 'Иванов Кирилл Егорович',   '718612845447'),
(9, 'Александров Артём Андреевич', '709382424050'),
(10,    'Жилина Мия Петровна', '722041372401'),
(11,    'Дмитриева Ангелина Алексеевна', '755223181815'),
(12,    'Ефимов Фёдор Матвеевич',   '7666588529'),
(13,    'Медведева Ксения Ивановна', '767001837161'),
(14,    'Карпов Богдан Даниилович',   '78052168724'),
(15,    'Майоров Илья Львович',   '70393690798'),
(16,    'Егоров Степан Александрович', '782597468020'),
(17,    'Васильева Татьяна Павловна',   '7981232625'),
(18,    'Филатова Анна Ильинична', '794068431039'),
(19,    'Яковлева Диана Артёмовна',   '776575983996'),
(20,    'Захаров Марк Алексеевич', '7127132106'),
(21,    'Комаров Ярослав Михайлович',   '7404312087'),
(22,    'Акимов Степан Максимович',   '773857449663'),
(23,    'Федотова Анна Даниловна', '78757212237'),
(24,    'Калинина Александра Романовна', '75967500367'),
(25,    'Матвеева Екатерина Михайловна', '7017831707');


Таблица Cars
CREATE TABLE cars
(
    id_car SERIAL NOT NULL PRIMARY KEY,
    car VARCHAR(40) NOT NULL, 
    pts INTEGER NOT NULL
);
 
INSERT INTO cars
VALUES
(1, 'Audi Q3',  '451347'),
(2, 'Audi Q5',  '473848'),
(3, 'Audi Q7',  '648930'),
(4, 'Audi 80',  '182542'),
(5, 'Audi 100', '603827'),
(6, 'Bentley Continental',  '953115'),
(7, 'BMW 7 F01',    '334595'),
(8, 'BMW 5 GT F07', '733287'),
(9, 'BMW 5 F10',    '183758'),
(10,    'BMW 1 F20',    '795151'),
(11,    'BMW 3 F30',    '489837'),
(12,    'BMW 3 e36 ',   '548573'),
(13,    'Dodge Grand ', '186607'),
(14,    'Dodge Neon ',  '292134'),
(15,    'Dodge Stratus ',   '845484'),
(16,    'Dodge RAM ',   '625442'),
(17,    'FIAT Albea',   '166281'),
(18,    'FIAT GRANDE PUNTO 5D', '878270'),
(19,    'FORD S-MAX',   '163140'),
(20,    'FORD Explorer ',   '395542'),
(21,    'FORD Fiesta ', '914166'),
(22,    'FORD Focus ',  '958440'),
(23,    'FORD Fusion',  '415550'),
(24,    'FORD Kuga ',   '846001'),
(25,    'FORD Mondeo ', '691162'),
(26,    'FORD RANGER ', '208253'),
(27,    'FORD Transit', '594644'),
(28,    'Great Hall Hover H3, H5',  '215389'),
(29,    'Honda Accord ',    '726022'),
(30,    'Honda Civic 4D',   '543712'),
(31,    'Honda CR-V ',  '497202'),
(32,    'Honda CR-V ',  '405780'),
(33,    'Honda JAZZ',   '415798'),
(34,    'Honda Pilot ', '459924'),
(35,    'Honda Stream ',    '869854'),
(36,    'Hyundai Accent ',  '680118'),
(37,    'Hyundai Elantra ', '359018'),
(38,    'Hyundai Gets', '674829'),
(39,    'Hyundai Starex',   '723287'),
(40,    'Hyundai Santa Fe', '707986'),
(41,    'Hyundai Tucson',   '895826'),
(42,    'HUMMER H2',    '443587'),
(43,    'HUMMER H3',    '820371'),
(44,    'Infiniti M ',  '459878'),
(45,    'Infiniti FX ', '186290'),
(46,    'Infiniti Q50  ',   '855056'),
(47,    'Infiniti QX',  '330482'),
(48,    'Jaguar X-Type',    '895121'),
(49,    'Jaguar XJ',    '174586'),
(50,    'Jaguar XF ',   '850235');


Таблица Numbers
CREATE TABLE numbers
(
    id_num SERIAL NOT NULL PRIMARY KEY,
    num VARCHAR(10) NOT NULL, 
    region INTEGER NOT NULL
);
 
INSERT INTO numbers 
VALUES
(1, 'А775ВО',    '47'),
(2, 'Р523ЕВ',    '147'),
(3, 'В124КК',    '41'),
(4, 'О858ВН',    '47'),
(5, 'А224МТ',    '147'),
(6, 'Т313ХВ',    '41'),
(7, 'М077АО',    '47'),
(8, 'В557УВ',    '147'),
(9, 'М680УМ',    '41'),
(10,    'Х341ВЕ',    '47'),
(11,    'Р722АС',    '147'),
(12,    'К841АО',    '41'),
(13,    'С052РЕ',    '47'),
(14,    'А044НА',    '147'),
(15,    'А833ХУ',    '41'),
(16,    'А840ТУ',    '47'),
(17,    'Е568УА',    '147'),
(18,    'Н822МХ',    '41'),
(19,    'Т817РВ',    '47'),
(20,    'Е259КА',    '147'),
(21,    'У262ТА',    '41'),
(22,    'С599ХР',    '47'),
(23,    'Е956КВ',    '147'),
(24,    'Н561ВО',    '41'),
(25,    'Р349НВ',    '47'),
(26,    'Р184НР',    '147'),
(27,    'Е415УС',    '41'),
(28,    'Н032ВК',    '47'),
(29,    'Х268НК',    '147'),
(30,    'Е990ВУ',    '41'),
(31,    'Х631КМ',    '47'),
(32,    'У293МУ',    '147'),
(33,    'В406ЕТ',    '41'),
(34,    'Т710ВЕ',    '47'),
(35,    'С330СХ',    '147'),
(36,    'У065АМ',    '41'),
(37,    'А129КВ',    '47'),
(38,    'Е594ВС',    '147'),
(39,    'Т597МВ',    '41'),
(40,    'Н088ВР',    '47'),
(41,    'В979ХМ',    '147'),
(42,    'В375НЕ',    '41'),
(43,    'Х552ВВ',    '47'),
(44,    'О132ХЕ',    '147'),
(45,    'С892РХ',    '41'),
(46,    'А343АА',    '47'),
(47,    'У333РО',    '147'),
(48,    'М595ВН',    '41'),
(49,    'С617СМ',    '47'),
(50,    'К523НМ',    '147');
  • Вопрос задан
  • 216 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы