powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / помогите составить запрос к таблицам....
23 сообщений из 23, страница 1 из 1
помогите составить запрос к таблицам....
    #39581160
Anatoliy S.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите составить запрос чтоб по фамилии выводились бы связанные двери.

поиск по фамилии Марсов.
запись "Марсов" в таблице person имеет уникальный идентификатор person.personID=3
запись "Х10" таблице door имеет уникальный идентификатор door.doorID=3
связи в таблице person_door по идентификатору 3 (Марсов) есть две связи с PersonID_DoorID.doorID 5 (Х12) и PersonID_DoorID.doorID 7(Х14)

Код: sql
1.
2.
3.
результат нужен в таком виде: 
Марсов  Х12
Марсов Х14





Пробывал так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SELECT s.name_room, c.shortFIO 
FROM door s 
 JOIN PersonID_DoorID sc ON s.doorID = sc.personID
 JOIN person c ON sc.personID = c.personID
WHERE c.shortFIO = 'Марсов'
 
Мне выдается результат:
ХЦ10    Марсов
ХЦ10    Марсов
 


То есть как я понимаю это просто "декартовый выбор" третья строка в таблицы person соединилась с третьей строкой таблице door. по двум джоинам, вот и две строки в результате.



Структуру прилагаю в диаграмме.
описание:

name_room поле с именем помещения в таблице door
shortFIO поле с фамилией в таблице person
таблица связей PersonID_DoorID





С Уважением Анатолий С.
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39581163
xenix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Anatoliy S.,

автор JOIN PersonID_DoorID sc ON s.doorID = sc.personID

уверен?
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39581167
WarAnt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoliy S.,

Код: sql
1.
2.
3.
4.
5.
SELECT s.name_room, c.shortFIO 
FROM door s 
 JOIN PersonID_DoorID sc ON s.doorID = sc.doorID
 JOIN person c ON sc.personID = c.personID
WHERE c.shortFIO = 'Марсов'
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39581197
Goga-Gola
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Anatoliy S.,

Крузенштерн - человек и дверь !
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39581438
Anatoliy S.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторWarAnt

Преогромнейшее спасибо за помощь.
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39585889
Anatoliy S.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WarAntAnatoliy S.,

Код: sql
1.
2.
3.
4.
5.
SELECT s.name_room, c.shortFIO 
FROM door s 
 JOIN PersonID_DoorID sc ON s.doorID = sc.doorID
 JOIN person c ON sc.personID = c.personID
WHERE c.shortFIO = 'Марсов'



Помогите пожалуйста описать запрос словами.
не совсем понимаю что с какой таблицей из 3х.
точки это "переменная"
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39585901
Tactical Nuclear Penguin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
то двери, то точки...
какие точки??
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39585905
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoliy S.,

авторточки это "переменная"
Незнание — сила ну и т.д.
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39585933
xenix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Anatoliy S.,
я бы не сказал, что "точки это "переменная" "
Обращение к столбцам таблицы идет виде [имя таблицы].[имя столбца]
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586081
Anatoliy S.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xenix,
Tactical Nuclear Penguin,
TaPaK,

офф топик.
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586194
Anatoliy S.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
SELECT s.name_room, c.shortFIO 
FROM door s 
 JOIN PersonID_DoorID sc ON s.doorID = sc.doorID
 JOIN person c ON sc.personID = c.personID
WHERE c.shortFIO = 'Марсов'



Помогите кто действительно может прочесть запрос и логически понимает написанное уважаемым WarAnt

Еще не понятно вот:
s.name_room, c.shortFIO обозначение "s" и "c" перед полями это типа псевдонимов? для того чтоб дальше писать короче а не полностью названия?
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586195
Кусочек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Anatoliy S.
Код: sql
1.
2.
3.
4.
5.
SELECT s.name_room, c.shortFIO 
FROM door s 
 JOIN PersonID_DoorID sc ON s.doorID = sc.doorID
 JOIN person c ON sc.personID = c.personID
WHERE c.shortFIO = 'Марсов'



Помогите кто действительно может прочесть запрос и логически понимает написанное уважаемым WarAnt

Еще не понятно вот:
s.name_room, c.shortFIO обозначение "s" и "c" перед полями это типа псевдонимов ? для того чтоб дальше писать короче а не полностью названия?

Не типа, а псевдоним.

Общие рекомендации всегда использовать псевдонимы, они не только позволяют сократить текст запроса и сделать его более читаемым, но и позволяют в одном запросе многократно обращаться к одному и тому же объекту (таблице, представлению и т.д.).

Это далеко не полный ответ на Ваш вопрос зачем.
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586202
Anatoliy S. Помогите кто действительно может прочесть запрос и логически понимает написанное уважаемым это такая форма глума? ты прикалываешься, или реально не понимаешь, что делает запрос?
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586205
Anatoliy S.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не получается сделать запрос по аналогии:

select ip_adress.ip_adres, skd_devices.skd_device
from ip_adress
JOIN ip_skd ON ip_skd.ip_adressID = ip_adress.ip_adressID
JOIN skd_devices ON [skd_deviceID] = ip_skd.skd_deviceID
WHERE ip_adres = '1.0.0.3'

найти устройство "skd_device" из таблицы "skd_devices" по IP адресу из таблицы ip_adress. Связующая таблица "ip_skd"

...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586208
Anatoliy S.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый Э - Эх,

понимаю в общем (построчно понимаю думаю, а вот полностью думаю нет). но видать не настолько чтоб на основе создать другой
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586243
xenix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Anatoliy S.,
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
select ip_adress.ip_adres, skd_devices.skd_device
from ip_adress
JOIN ip_skd ON ip_skd.ip_adressID = ip_adress.ip_adressID
JOIN skd_devices ON [skd_deviceID] = ip_skd.skd_deviceID
WHERE ip_adres = '1.0.0.3'

SELECT ADR.ip_adres,SKD.skd_device
FROM ip_adress ADR
JOIN ip_skd SKD ON ADR.ip_adressID=SKD.ip_adressID
JOIN skd_devices DEV ON DEV.skd_deviceID=SKD.skd_deviceID
WHERE ADR. ip_adres = '1.0.0.3'
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586300
Anatoliy S.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xenix,

Код: sql
1.
2.
3.
4.
5.
SELECT ADR.ip_adres,SKD.skd_device
FROM ip_adress ADR
JOIN ip_skd SKD ON ADR.ip_adressID=SKD.ip_adressID
JOIN skd_devices DEV ON DEV.skd_deviceID=SKD.skd_deviceID
WHERE ADR. ip_adres = '1.0.0.3'


авторСообщение 207, уровень 16, состояние 1, строка 1
Недопустимое имя столбца "skd_device".

не удается выполнить привязку составного идентификатора DEV.skd_deviceID
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586307
Руслан Дамирович
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoliy S.,

Молодой человек, шли бы вы отсюда книжки почитали.
Возвращайтесь, когда реальные вопросы возникнут, а не то, что можно прочитать на первых ста страницах любой книжки "SQL для чайников".
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586355
Anatoliy S.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Руслан Дамирович,

вы конечно наверно прочитали больше ста листов. И допускаю что знаете ответ или решили б задачу сами похожую.
Не тратьте свое время на пустые ответы. Нет желания помочь, проходите молча.
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586392
Anatoliy S.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторxenix,

Код: sql
1.
2.
3.
4.
5.
SELECT ADR.ip_adres,DEV.skd_device
FROM ip_adress ADR
JOIN ip_skd SKD ON ADR.ip_adressID=SKD.ip_adressID
JOIN skd_devices DEV ON DEV.skd_deviceID=SKD.skd_deviceID
WHERE ADR. ip_adres = '1.0.0.3'



Огромное спасибо.
Поправил псевдоним SKD на DEV
заработал.
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586409
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoliy S.WarAntAnatoliy S.,

Код: sql
1.
2.
3.
4.
5.
SELECT s.name_room, c.shortFIO 
FROM door s 
 JOIN PersonID_DoorID sc ON s.doorID = sc.doorID
 JOIN person c ON sc.personID = c.personID
WHERE c.shortFIO = 'Марсов'



Помогите пожалуйста описать запрос словами.
не совсем понимаю что с какой таблицей из 3х.
точки это "переменная"

1. напишите мне запрос
2. опишит словами, что вы там понаписывали
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586453
Anatoliy S.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин,

а почему бы и не описать словами.
Не в каждом учебнике или книге найдешь хорошим стилем описание по JOIN с тремя таблицами. В основном пример с двумя таблицами.

IMHO.
Специалисту не должно быть проблемно написать и описать что написал.

Если нет желания то можно пройти мимо без комментариев.
Посылать читать книги спросившего или просить уходить из форума могут обозленные без совестные людишки.
У каждого свои проблемы и дела.
Форум и создан чтоб спросить и получить ответ. Обучение и чтение в другом месте.

Закрываем демагогию, не флудим.
...
Рейтинг: 0 / 0
помогите составить запрос к таблицам....
    #39586506
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Модератор: Anatoliy S.,

Уважаемый Anatoliy S. Еще одно выступление в подобном стиле, и я закрою вашу тему, а вас отправлю отдыхать на недельку другую в бан.

Уважаемые отвечающие,

В демагогию лучше не вступайте. Заодно узнаем, кто захочет автору помогать после его поучений.
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / помогите составить запрос к таблицам....
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]