![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() |
Rian |
![]()
Сообщение
#1
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 394 Пол: Мужской Репутация: ![]() ![]() ![]() |
Доброй ночи, хочу написать телефонный справочник.
Есть две таблицы: одна главная, другая подчинённая со связью «один ко многим», т.е. у каждого человека может быть несколько номеров телефонов. Найти человека, а потом по связи увидеть его телефоны не проблема и без SQL. А как найти человека по телефону? (используя SQL). Может выбрать телефоны, а потом сравнить ключи в полученном запросе и главной таблице? Описать такую выборку чисто на делфях могу, а на SQL неа. -------------------- Objective-C, Unity3d
|
![]() ![]() |
Гость |
![]()
Сообщение
#2
|
Гость ![]() |
SQL SELECT TableUser.Name выдаст тебе имя по номеру телефона.FROM TableUser INNER JOIN TablePhone ON TableUser.ID = TablePhone.UserID WHERE (((TablePhone.Phone)=[Phone Number here])); |
Rian |
![]()
Сообщение
#3
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 394 Пол: Мужской Репутация: ![]() ![]() ![]() |
Попробую. Где-то я уже видел похожее. Если можно пару коментариев.
-------------------- Objective-C, Unity3d
|
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
А что непонятно? (пост выше - мой, авторизация не срабатывала)
Выбирается значение Name из TableUser, при этом рассматриваются только те записи таблицы TableUser, для поля TableUser.ID которой существует соответствующее поле TablePhone.UserID (об этом позаботится INNER JOIN). Ну, и кроме того, что эти поля должны совпадать, еще и соответствующее поле TablePhone.Phone должно совпадать с заданным для поиска номером (это уже забота WHERE)... В результате получаем имя хозяина заданного телефона. |
Rian |
![]()
Сообщение
#5
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 394 Пол: Мужской Репутация: ![]() ![]() ![]() |
спасибо за комент. просто я только вчера SQL-лом занялся и для меня оно ещё выглядит немножко как абракадабра
-------------------- Objective-C, Unity3d
|
Rian |
![]()
Сообщение
#6
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 394 Пол: Мужской Репутация: ![]() ![]() ![]() |
volvo, я ведь правильно написал запрос?
Но когда пытаюсь его выполнить выбивает ошибку, что поля key не существует. < -------------------- Objective-C, Unity3d
|
volvo |
![]()
Сообщение
#7
|
Гость ![]() |
Не знаю, у меня вот такой запрос (на моей базе)
ADOQuery1.SQL.Clear;отработал прекрасно... |
Rian |
![]()
Сообщение
#8
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 394 Пол: Мужской Репутация: ![]() ![]() ![]() |
всё равно не хочет. как-нибуть попробую с новой базой. может не понимает русские названия таблиц или в своей базе напихал чёрти чего так, что оно глючит.
-------------------- Objective-C, Unity3d
|
![]() ![]() |
![]() |
Текстовая версия | 19.06.2025 11:06 |