Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.05.2009, 00:03   #1
bullvinkle
Временно — юрист.
Форумчанин
 
Аватар для bullvinkle
 
Регистрация: 31.03.2008
Сообщений: 204
По умолчанию Запрос на выборку из нескольких таблиц

Добрый день.
Прошу вашей помощи. Уже час ломаю себе голову над простейшим запросом.
Необходимо из базы выбрать страну, в которой разговаривают на французком языке.
Я уже и так и сяк писал запрос, но ничего не выходит.
Последний вариант вот:
Код:
SELECT страна.название_страны
FROM страна, языки
WHERE языки.названия_языка = 'французкий'
AND языки.название_страны = страна.название_страны;
Он не правильный, но это то, на чем я остановился.
Вложения
Тип файла: zip world_xp.zip (223.4 Кб, 18 просмотров)
bullvinkle вне форума Ответить с цитированием
Старый 14.05.2009, 01:38   #2
koma_grusha
Редкий обитатель
Форумчанин
 
Аватар для koma_grusha
 
Регистрация: 08.04.2009
Сообщений: 170
По умолчанию

так и не получится никогда, потому что у тебя таблица языки и страна не связаны никак, напрмер в таблице языки нет такого поля - название страны, там одно только поле - название языка, аналогично в таблице страна, нет никакого намека на язык

зато в базе есть таблица "имеет_язык" , вот с ней-то и надо работать, т.е.

Код:
SELECT название_страны
FROM имеет_язык
WHERE названия_языка = 'французкий'
Мозг, хорошо устроенный, стоит больше, чем мозг, хорошо наполненный (Мишель Монтень)

Последний раз редактировалось koma_grusha; 14.05.2009 в 01:42.
koma_grusha вне форума Ответить с цитированием
Старый 14.05.2009, 08:50   #3
bullvinkle
Временно — юрист.
Форумчанин
 
Аватар для bullvinkle
 
Регистрация: 31.03.2008
Сообщений: 204
По умолчанию

Попробовал я твоим способом.
Когда его запускаю, открывается форма, и в ней пишет "Введите значение параметра название.языка"
Хотя в запросе же точно написано, что это 'французкий'.


Чуть позже поменял с названиеЯ_языка на названиЕ_языка (как это есть в таблице), так выводит пустую таблицу.
bullvinkle вне форума Ответить с цитированием
Старый 14.05.2009, 21:15   #4
koma_grusha
Редкий обитатель
Форумчанин
 
Аватар для koma_grusha
 
Регистрация: 08.04.2009
Сообщений: 170
По умолчанию

Цитата:
Когда его запускаю, открывается форма, и в ней пишет "Введите значение параметра название.языка"
удали параметры (свойство Parameters) у ADOQuery.
Мозг, хорошо устроенный, стоит больше, чем мозг, хорошо наполненный (Мишель Монтень)
koma_grusha вне форума Ответить с цитированием
Старый 14.05.2009, 22:26   #5
bullvinkle
Временно — юрист.
Форумчанин
 
Аватар для bullvinkle
 
Регистрация: 31.03.2008
Сообщений: 204
По умолчанию

А где это сделать? Куда зайти.
Ввел в поике access 'ADOQuery' - ничего не нашло.
Куда ТЫКАТЬ мышкой, что-бы это сделать?
bullvinkle вне форума Ответить с цитированием
Старый 14.05.2009, 22:31   #6
koma_grusha
Редкий обитатель
Форумчанин
 
Аватар для koma_grusha
 
Регистрация: 08.04.2009
Сообщений: 170
По умолчанию

Цитата:
Сообщение от bullvinkle Посмотреть сообщение
А где это сделать? Куда зайти.
Ввел в поике access 'ADOQuery' - ничего не нашло.
Куда ТЫКАТЬ мышкой, что-бы это сделать?
ай!! извини, я как всегда про дельфи. Ты же в аксесе, только вот там то я не могу посмотреть, у меня не мс офис стоит, а опеновский.
Мозг, хорошо устроенный, стоит больше, чем мозг, хорошо наполненный (Мишель Монтень)
koma_grusha вне форума Ответить с цитированием
Старый 16.05.2009, 00:36   #7
bullvinkle
Временно — юрист.
Форумчанин
 
Аватар для bullvinkle
 
Регистрация: 31.03.2008
Сообщений: 204
По умолчанию

Может, кто другой знает как это сделать, у кого офис мелкософтовский стоит?
bullvinkle вне форума Ответить с цитированием
Старый 16.05.2009, 15:03   #8
x8i
Пользователь
 
Аватар для x8i
 
Регистрация: 13.05.2009
Сообщений: 37
По умолчанию

Как я понял тебе из базы нужно выбрать список стран в которых говорят на французском языке. Тогда запрос Язык_французкий надо писать так:

SELECT название_страны
FROM имеет_язык
WHERE название_языка = "французский";

вот рабочий пример:
world_xp.rar
C++ Builder 6
x8i вне форума Ответить с цитированием
Старый 16.05.2009, 18:00   #9
bullvinkle
Временно — юрист.
Форумчанин
 
Аватар для bullvinkle
 
Регистрация: 31.03.2008
Сообщений: 204
По умолчанию

Спасибо!! Все работает.
Все из-за кавычек)))))
bullvinkle вне форума Ответить с цитированием
Старый 11.04.2012, 04:35   #10
Banker_97
Новичок
Джуниор
 
Регистрация: 11.04.2012
Сообщений: 1
Смущение Request

Как можно написать SQL запрос на данную ситуацию: есть таблица профессоров ( Id_P, Name_P), таблица студентов (Id_S, Name_S), связующая таблица (ID_S, ID_P), где указано какой студент занимается у какого профессора...

Необходимо получить в результате "сводную" таблицу ( Id_P, QNTY), где указаны Id преподавателя и количество студентов, которые у него занимаются...

То есть у профессора, к которому не записались студенты в столбце QNTY будет стоять ноль (0)...


=================================== ===========
Кросспостинг (создание одинаковых тем и сообщений) запрещён правилами форума!


Модератор.

Последний раз редактировалось Serge_Bliznykov; 11.04.2012 в 07:43.
Banker_97 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
простейший запрос на выборку kate158 БД в Delphi 2 13.05.2009 14:33
Запрос на выборку Ruska882009 Microsoft Office Access 2 26.02.2009 20:39
в БД есть запрос 6 (на выборку) s1a9s8h6a БД в Delphi 12 02.01.2009 00:48
помогите поправить запрос на выборку в дельфи Барби Помощь студентам 1 13.10.2008 11:35
Сведение нескольких таблиц в одну Sega Microsoft Office Excel 3 05.08.2008 15:21