Форум программистов, компьютерный форум, киберфорум
PostgreSQL
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 12.12.2021
Сообщений: 25

Объединение трёх таблиц во VIEW

25.11.2022, 18:29. Показов 473. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть 3 таблицы. Numbers, Drivers и Cars. (Номера, Водители и Машины)
Связи: У водителя может быть 1 или >1 машин. У 1 машины 1 номер.
Вывести во VIEW столбцы с водителями, машинами, птс и номерами.

Таблица numbers
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
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'),
(51,    'М945ОМ',    '41'),
(52,    'Х342ЕУ',    '47'),
(53,    'Р084АХ',    '147'),
(54,    'М805ХК',    '41'),
(55,    'О856КМ',    '47'),
(56,    'В709УО',    '147'),
(57,    'М758СУ',    '41'),
(58,    'Е953АК',    '47'),
(59,    'В634ВХ',    '147'),
(60,    'В515ХТ',    '41'),
(61,    'У761ВС',    '47'),
(62,    'К630УМ',    '147'),
(63,    'М395ВВ',    '41'),
(64,    'У423УМ',    '47'),
(65,    'Х504УТ',    '147'),
(66,    'Е620ХК',    '41'),
(67,    'Р926ВТ',    '47'),
(68,    'К485ХР',    '147'),
(69,    'В328РС',    '41'),
(70,    'М890МР',    '47'),
(71,    'Т942СА',    '147'),
(72,    'К886РК',    '41'),
(73,    'В381ХУ',    '47'),
(74,    'К119НХ',    '147'),
(75,    'Х618НЕ',    '41'),
(76,    'Х465ВЕ',    '47'),
(77,    'Т652КС',    '147'),
(78,    'К450ВА',    '41'),
(79,    'Р231ВА',    '47'),
(80,    'К856МН',    '147'),
(81,    'С765МР',    '41'),
(82,    'М863ТЕ',    '47'),
(83,    'Т066РК',    '147'),
(84,    'О400ВУ',    '41'),
(85,    'У274ТЕ',    '47'),
(86,    'У912ОТ',    '147'),
(87,    'Р181ЕВ',    '41'),
(88,    'С304НЕ',    '47'),
(89,    'Х476РН',    '147'),
(90,    'Х766АР',    '41'),
(91,    'С373ОЕ',    '47'),
(92,    'О241АВ',    '147'),
(93,    'С595ЕХ',    '41'),
(94,    'Е908ВВ',    '47'),
(95,    'Н287АУ',    '147'),
(96,    'А199ТМ',    '41'),
(97,    'М261ХН',    '47'),
(98,    'А974НЕ',    '147'),
(99,    'К609ВХ',    '41'),
(100,   'Н339АУ',    '47');
 
SELECT *
FROM numbers
Таблица drivers
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
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'),
(26,    'Меркулов Алексей Артурович',   '780014999863'),
(27,    'Соколов Александр Семёнович', '71460451649'),
(28,    'Юдин Максим Русланович',   '78027088091'),
(29,    'Борисова Виктория Тимофеевна',   '78046738203'),
(30,    'Федоров Савелий Кириллович',   '7581336138'),
(31,    'Бурова Полина Михайловна',   '7189980471'),
(32,    'Полякова Оливия Эмильевна', '757699991476'),
(33,    'Прохорова Полина Артёмовна',   '71922044933'),
(34,    'Соловьева Марианна Богдановна', '724493430499'),
(35,    'Михайлова Алёна Георгиевна',   '78187576709'),
(36,    'Нестерова София Тимуровна', '753888002065'),
(37,    'Соловьев Даниил Эмирович',   '79594375242'),
(38,    'Сергеева Айша Андреевна', '729433811680'),
(39,    'Лавров Георгий Григорьевич',   '782854423377'),
(40,    'Игнатов Фёдор Никитич', '7395685113'),
(41,    'Егорова Анна Антоновна',   '79462641927'),
(42,    'Дубова Алиса Александровна',   '76195676962'),
(43,    'Федорова Виктория Матвеевна', '73001491968'),
(44,    'Смирнов Тимофей Дмитриевич',   '7332519228'),
(45,    'Федоров Артём Романович', '77515861162'),
(46,    'Федоров Александр Максимович',   '78655287611'),
(47,    'Иванова Кристина Степановна', '772807433578'),
(48,    'Александров Никита Матвеевич',   '73942099694'),
(49,    'Виноградова Вера Савельевна', '782504773830'),
(50,    'Ковалев Иван Сергеевич',   '7634218268');
Таблица cars
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
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'),
(51,    'Mitsubishi Pajero Sport 1',    '385398'),
(52,    'Mitsubishi Pajero Sport 2',    '500995'),
(53,    'Nissan Juke',  '238620'),
(54,    'Nissan Teana ',    '924492'),
(55,    'Nissan Tiida 5D',  '759081'),
(56,    'Nissan Tiida ',    '627380'),
(57,    'Nissan Maxima ',   '379438'),
(58,    'Nissan  Murano  ', '682395'),
(59,    'Nissan Navara ',   '612894'),
(60,    'Nissan Pathfinder ',   '155605'),
(61,    'Nissan Patrol ',   '502495'),
(62,    'Nissan Primera ',  '343830'),
(63,    'Nissan Qashqai ',  '576631'),
(64,    'Nissan Serena ',   '629791'),
(65,    'Nissan Terrano ',  '844894'),
(66,    'Renault Duster',   '480463'),
(67,    'Nissan X-TRAIL T30',   '965413'),
(68,    'Nissan X-TRAIL T31',   '333523'),
(69,    'Nissan Almera Classic',    '323029'),
(70,    'Nissan Almera G11',    '796400'),
(71,    'Opel Antara',  '630375'),
(72,    'Opel Astra G', '556226'),
(73,    'Opel Astra H ',    '870888'),
(74,    'Opel Insignia',    '933706'),
(75,    'Opel Vectra C',    '146337'),
(76,    'Opel Zafira A',    '141608'),
(77,    'Peugeot 107 ', '646703'),
(78,    'Peugeot 207 ', '119445'),
(79,    'Peugeot 301',  '464247'),
(80,    'Peugeot 308 ', '875377'),
(81,    'Peugeot 308 ', '690051'),
(82,    'Peugeot 3008', '741557'),
(83,    'Peugeot 4007', '559254'),
(84,    'Subaru Forester ', '185939'),
(85,    'Subaru Impreza',   '823896'),
(86,    'Subaru Legacy ',   '422235'),
(87,    'Subaru Outback ',  '176320'),
(88,    'Subaru XV',    '847231'),
(89,    'Suzuki Grand Vitara (5D)', '165896'),
(90,    'Suzuki Jimny', '972988'),
(91,    'Suzuki Liana', '955368'),
(92,    'Toyota Alpard',    '976908'),
(93,    'Toyota Camry V20', '336677'),
(94,    'Toyota Camry V30', '576288'),
(95,    'Toyota Camry V40', '444050'),
(96,    'Toyota Camry V50', '525090'),
(97,    'Toyota Corolla E150',  '462796'),
(98,    'Toyota Corolla E160',  '701742'),
(99,    'Toyota LC 100',    '660344'),
(100,   'Toyota Prado LC120',   '572336');
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.11.2022, 18:29
Ответы с готовыми решениями:

Объединение трех одинаковых таблиц по одному полю
Гуру, подскажите куда копать! (давно не составлял сложных запросов - срочно должен вспомнить/научиться) 3 таблицы имя | значение...

Объединение трёх таблиц
Здравствуйте. Прошу помочь или просто пнуть, в какую сторону читать. Есть 3 таблицы Switching_node, Switchs и UPS. Полностью приводить...

Объединение трех таблиц в одну
Есть три таблицы с данными по материалам-"остатки","приход" и "расход",в которую записываются данные по индивидуальным кодам материалы из...

4
 Аватар для Аватар
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
25.11.2022, 19:33
между таблицами нет ни какой связи. чисто формально можно идешками связать, так примерно
SQL
1
2
3
4
SELECT d.name_driver,c.car,c.pts,n.num
  FROM drivers d
    JOIN numbers n ON n.id_num BETWEEN d.id_driver*2-1 AND d.id_driver*2
    JOIN cars c ON c.id_car=n.id_num
вьюху сам делай)
0
0 / 0 / 0
Регистрация: 12.12.2021
Сообщений: 25
25.11.2022, 20:40  [ТС]
А как сделать так чтобы у некоторых водителей было по 1, по 2 и по 3 машины?

И можно ли вообще сделать так чтобы некоторые номера оставались свободными, т.е. не использовались?
0
 Аватар для Аватар
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
25.11.2022, 20:56
все можно. только нормальные связи между таблицами сделай. и тогда хоть 100 авто одному багатею, а остальным фигу )
0
0 / 0 / 0
Регистрация: 12.12.2021
Сообщений: 25
26.11.2022, 12:28  [ТС]
понимать бы ещё как их сделать, а то вообще мало что понятно))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.11.2022, 12:28
Помогаю со студенческими работами здесь

Объединение трех таблиц, подсчет данных
Доброго времени суток! Столкнулась с проблемой в запросе. Имеется 3 таблицы - отправитель (id, фио, адрес), получатель(id, фио, адрес) и...

Объединение трех таблиц в одну новую
Здравствуйте. У меня есть 4 таблицы полностью одинаковые по структуре, но разные по содержанию. Одна из таблиц пустая. В двух таблицах...

Объединение трех таблиц без декартового произведения
Есть отношение (на рисунке). Мне нужно создать представление Рабочие (ФИО рабочего, Название работы, Выслуга лет, Минимальная ставка,...

Объединение трех таблиц
Добрый день. Подскажите пожалуйста как правильно составить запрос на обьединение из трех таблиц. С двумя таблица знаю как сделать, с 3мя...

Объединение трех таблиц с товарами к документу без дублей
Всем привет, помогите пожалуйста, уже в который раз натыкаюсь на одну и ту же проблему и не могу решить. Есть документ Заказ поставщику, к...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru