powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
38 сообщений из 38, показаны все 2 страниц
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456389
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

Помогите мне пожалуйста!

Очень надо решить такую задачу.

Имеется некий банк с филиалами. Клиент может иметь несколько счетов, при этом они могут быть размещены как в одном , так и в разных филиалах банка находящихся в разных районах.Каждый клиент , в соответствии со своим счетом, может рассчитывать на некотрый кредит банка. При анализе предметной области были выявлены следующие атрибуты:



Я создал три таблицы и связал их.
Таблицы "Клиент" и "Филиалы" связаны отношением многие ко многим через промежуточную таблицу (с внешними ключами) клиентов.

Вот состав полей

"Клиент"

КодКлиента /PrimaryKey/
ФИО

"Филиал"
НомерФилиала /PrimaryKey/

"Клиент"
НомерСчета /PrimaryKey/
Остаток
Кредит
КодКлиента /ForeignKey/ связь с таблицей клиентов
НомерФлиала / ForeignKey/ связь с таблицей филиалов

Вот заковырка.

Необходимо используя запросы вывести ФИО клиентов которые имеют счета во всех филиалах.

Например Иванов имеет счета в филиале1, филиале2 и филиале3. Петров имеет счета только в первом филиале и втором

Запрос должен вернуть только код и ФИО Петрова, т.к. у него счета во всех филиалах.

Ребята , помогите.

Могу выслать копию базы на мыло, тому кому стало интересно.

Спасибо вам заранее.
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456453
hm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Например Иванов имеет счета в филиале1, филиале2 и филиале3. Петров имеет счета только в первом филиале и втором

>Запрос должен вернуть только код и ФИО Петрова, т.к. у него счета во всех >филиалах.

Может все-таки запрос должен вернуть ФИО Иванова


скинь на registration2005@mail.ru
Пороюсь можь чо получиться
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456463
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну пусть ФИО Иванова. Посмотри базу и поймешь .

Спасибо что откликнулся!

Скидываю на указанное мыло базу.
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456498
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если реальные счета банковских карт с их номерами то и мне скинь ))
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456506
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то вроде этого

Код: plaintext
1.
2.
3.
SELECT КодКлиента,КодФилиала,Count(КодФилиала)  FROM Клиенты_Счета
GROUP BY КодКлиента, КодФилиала
HAVING  Count(КодФилиала)=>(Select COUNT(*) FROM Филиал);
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456534
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Виктору.

Попробовал,спасибо.

Ругается на вот это место в запросе =>
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456548
hm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
конкретно для твоей mdb создал еще один запрос

SELECT DISTINCT [ФИО]
FROM Запрос1
WHERE [ФИО] In (SELECT [ФИО] FROM [Запрос1] As Tmp GROUP BY [ФИО] HAVING Count(*)=
(SELECT count(Филиал.НомерФилиала) FROM Филиал)
)
ORDER BY [ФИО];

вроде работает
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456551
Фотография SergeySV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мда, честно говоря тоже не просек, мож поподробнее, это как понимать:

Код: plaintext
Count(КодФилиала)=>(Select COUNT(*) FROM Филиал)
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456559
hm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если у тебя не работает могу скинуть саму .mdb
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456572
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
=> такого нет
можно так
>=
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456584
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо заработало.

Есть!

Hm

Ты просто молодец . спасибо , работает. Правда через запрос дополнительный . Но пойдет . Как без запроса "Запрос1" это сделать интересно?

Нет слов , спасибо тебе.

Виктору

Может и твой вариант как то исправить?


Вот еще это надо сделать и все. Сделать запросы.

1. Вывести клиентов, которые имеют по одному счету в разных филиалах банка

2. Вывести филиалы ,которые не имеют ни одного клиента

2. Вывести филиалы, которые имеют клиентов с остатком на счету 0.
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456599
hm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если хочешь тоже самое в одном запросе, то вот

SELECT DISTINCT [ФИО]
FROM
(SELECT DISTINCTROW Клиент.ФИО, СчетКлиента.НомерФилиала
FROM Филиал INNER JOIN (Клиент INNER JOIN СчетКлиента ON Клиент.КодКлиента = СчетКлиента.КодКлиента) ON Филиал.НомерФилиала = СчетКлиента.НомерФилиала)
WHERE [ФИО] In (SELECT [ФИО] FROM [Запрос1] As Tmp GROUP BY [ФИО] HAVING Count(*)=
(SELECT count(Филиал.НомерФилиала) FROM Филиал)
)
ORDER BY [ФИО];

ЗЫ: вот только еще не успел подумать как это хозяйство будет работать,
если у одного клиента в одном филиале больше одного счета
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456624
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То что нужно , только все равно запрос "Запрос1 " используется.
???
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456700
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
=> такого нет
можно так
>=

Ну быфает, ну исфините :)

Мда, честно говоря тоже не просек, мож поподробнее, это как понимать:

Очень просто: так как группировка по Коду клиента и коду филиала, то Count вернет кол-во записей филиалов в которых есть данный клиент. И сравниваем с кол-вом самих филиалов (Select COUNT(*) FROM Филиал). >= нужно если в 1 филиале несколько счетов одного клиента.
Сам запрос не проверял - но вроде логика вроде правильная.
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456722
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ребята спасибо, через пару часов вернусь!
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456779
А просто через Декартово произведение?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
SELECT К.КодКлиента, К.ФИО
FROM Филиал AS Ф, Клиент AS К
WHERE NOT Exists 
 (SELECT С.КодКлиента, С.НомерФлиала
   FROM [СчетКлиента] AS С 
   WHERE С.НомерФлиала = Ф.НомерФилиала
    AND С.КодКлиента=К.КодКлиента
    );
- это все те, кто _не имеет_ во всех

и, соответсвенно:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
SELECT К2.КодКлиента, К2.ФИО
FROM Клиент AS К2
WHERE NOT EXISTS(
  SELECT *
  FROM Филиал AS Ф, Клиент AS К
  WHERE К.КодКлиента =К2.КодКлиента 
  AND NOT Exists (
     SELECT С.КодКлиента, С.НомерФлиала
     FROM [СчетКлиента] AS С
     WHERE С.НомерФлиала = Ф.НомерФилиала
      AND С.КодКлиента=К.КодКлиента
     )
   )
;


- те, которые имеют во всех. (Вот токо про быстродействие не сабражу)
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32456868
2 Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Senin Viktor
ваш запрос не прокатит, ИМХО (даже с правкой ситаксиса). Ибо надо СНАЧАЛА сделать группировку и по клиенту и филиалу, ПОТОМ (от него) еще раз сделать группировку только по клиенту и посчитать каунт (разных) филиалов (по клиенту). Иначе либо получите число счетов в данном филиале (группировка по филиалу в конечном запросе), либо число счетов всего (если выкинете группировку по филиалу в конечном) и если допустимо иметь несколько счетов в одном филиале - получите ошибку).

по крайней мере в 97 :
Count()Хотя аргумент выражение допускает выполнение вычислений над полем, функция Count возвращает просто количество записей, независимо от того, какие данные содержатся в этих записях.

Функция Count не подсчитывает записи со значениями Null,
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32457011
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты прав :(
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32457071
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Цены вам нет господа Монстры.

Покатило , через декартово. Спасибо. Работает!

Осталось только это.

1. Вывести клиентов, которые имеют по одному счету в разных филиалах банка
2. Вывести филиалы ,которые не имеют ни одного клиента
2. Вывести филиалы, которые имеют клиентов с остатком на счету 0.
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32457130
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Монстры убежали кушать базы
Ребята.
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32457179
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сделал это: Вывести филиалы, которые имеют клиентов с остатком на счету 0.

SELECT DISTINCTROW СчетКлиента.НомерФилиала
FROM Филиал INNER JOIN СчетКлиента ON Филиал.НомерФилиала = СчетКлиента.НомерФилиала
GROUP BY СчетКлиента.НомерФилиала, СчетКлиента.Остаток
HAVING (((СчетКлиента.Остаток)=0));

Осталось как вывести клиентов, которые имеют по одному счету в разных филиалах банка.
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32457898
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наступил последний день...

1. Вывести клиентов, которые имеют по одному счету в разных филиалах банка
2. Вывести филиалы ,которые не имеют ни одного клиента
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32458090
как-то так
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если не заботиться об оптимальности, то:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
SELECT К2.КодКлиента, К2.ФИО
FROM Клиент AS К2
WHERE Not Exists 
   (SELECT *
   FROM Филиал AS Ф, Клиент AS К
   WHERE К.КодКлиента =К2.КодКлиента 
    AND NOT Exists 
          (SELECT С.КодКлиента, С.НомерФлиала
          FROM [СчетКлиента] AS С
          WHERE С.НомерФлиала = Ф.НомерФилиала
           AND С.КодКлиента=К.КодКлиента
))  AND NOT EXISTS
(
SELECT С0.КодКлиента
   FROM [СчетКлиента] AS С0
   WHERE  С0.КодКлиента =К2.КодКлиента 
   GROUP BY С0.КодКлиента, С0.НомерФлиала
   HAVING (Count(*))> 1 
)
;


и
Код: plaintext
1.
2.
3.
4.
SELECT Ф.НомерФилиала
   FROM Филиал AS Ф 
   LEFT JOIN [СчетКлиента] AS С 
  ON Ф.НомерФилиала = С.НомерФлиала
  WHERE (((С.НомерСчета) Is Null));
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32458632
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо.Со вторым разобрался , а спервым не выходит.Не возвращает записей запрос.Хотя скажем у Иванова один счет в филиале1, один счет в филиале2, вот его фио и код должно вылезти.
Осталось только это сделать, все остальное с вашей помощью сделал.

Спасибо.

Что не так в запросе?
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32458661
hm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор
1. Вывести клиентов, которые имеют по одному счету в разных филиалах банка

имеется в виду что обязятельно в каждом филиале банка должен быть ровно один счет клиента?

или как?
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32458697
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 hm

Нет у каждого не должен быть один счет в филиале.
Ну вот например Есть три филиала филиал_1 филиал_2 филиал_3

У Иванова пять счетов в первом филиале, два во втором, один в третьем.
Иванов не подойдет для запроса. (Т.к у него один счет только в одном филиале, а надо чтобы было по односу счету в несколько)
У Петрова 3 счета в первом филиале 3 во втором и два в третьем филиале
Он тоже не подойдет

Сидоров
У него один счет в первом филиале , один во втором филиале и два в третьем филиале.
Вот Сидоров подойдет, так у него в разных филиалах по одному счету.

Я думаю ясно.
Если даже есть четвертый филиал и нет в нем вообще счета , а есть по одному счету в других, то это тоже подойдет.Запрос должен вернуть такого клиента.
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32458698
Я знал!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
тьфу, ты. Я так и думал. (есть много вариантов расшивровки "по 1 счету")

"1." выводит всех у кого в КАЖДОМ (т.е. во ВСЕХ) филиале есть по 1-му счету. Если есть ф-л 3, Иванов не вылезет.

Если нужно всех, кто имеет счета (хотя бы в одном, а не во ВСЕХ), при этом не более 1-го в каждом, отфильтруй "Счета" по количеству
т.е. что -то типа

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SELECT К2.КодКлиента, К2.ФИО 
  FROM Клиент AS К2, [СчетКлиента] AS С1
  WHERE
  К2.КодКлиента = С1.КодКлиента 
  AND NOT EXISTS
(
SELECT С0.КодКлиента
   FROM [СчетКлиента] AS С0
   WHERE  С0.КодКлиента =К2.КодКлиента 
   GROUP BY С0.КодКлиента, С0.НомерФлиала
   HAVING (Count(*))> 1 
)
;

1-я часть (INNER JOIN) - дает всех, кто хоть что-то имеет, а NOT EXISTS отсекает по числу счетов
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32458720
да, еще
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
distinctrow

В смысле вставь :
SELECT distinctrow К2.КодКлиента, К2.ФИО
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32458740
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо большое. Но немного не то. Например у меня у иванова один счет в одном филиале и запрос его выводит. А он не подходит. Как миниму по одному счету должно быть в двух разных филиалах.Вот тогда клиент подойдет.

Но если у Иванова было по однгому счету в двух филиалах тогда было бы верно.

Дистинкт поставил,осталось немножко подправить этот запрос.
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32458761
елы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну, елы-палы!
ты чё, савсем обленился?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
SELECT К2.КодКлиента, К2.ФИО 
  FROM Клиент AS К2
WHERE EXISTS (SELECT [КодКлиента]
FROM  [СчетКлиента] AS С1
  WHERE
  К2.КодКлиента = С1.КодКлиента 
  GROUP BY С1.КодКлиента
  HAVING (Count(*))> 1 

)
  AND NOT EXISTS
(
SELECT С0.КодКлиента
   FROM [СчетКлиента] AS С0
   WHERE  С0.КодКлиента =К2.КодКлиента 
   GROUP BY С0.КодКлиента, С0.НомерФлиала
   HAVING (Count(*))> 1 
)
;

(т.е. замени JOIN, который отбирал существование счетов, запросом, проверяющим существование не менее 2 счетов (при условии что не больше 1-го в каждом филиале это и будет условие "более одного филиала")
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32458783
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Громадное спасибо, жаль нет тебя рядом,поставил бы ящик холодненького пивка!!! Спасибо большое.Все работает.
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32458785
hm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может быть малость некрасиво. Так на скору руку накидал. Но кажись работает

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
SELECT [%$##@_Alias].ФИО, Count([%$##@_Alias].НомерФилиала) AS [Count-НомерФилиала1]
FROM [SELECT Запрос1.ФИО, Count(Запрос1.НомерФилиала) AS [Count-НомерФилиала], Запрос1.НомерФилиала
FROM Запрос1
GROUP BY Запрос1.ФИО, Запрос1.НомерФилиала
HAVING (((Count(Запрос1.НомерФилиала))= 1 ))
]. AS [%$##@_Alias]
GROUP BY [%$##@_Alias].ФИО
HAVING (((Count([%$##@_Alias].НомерФилиала))> 1 ));
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32458929
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо .
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32460070
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем здрасте.

Блин,тут немного завалили задачку...

Оказывается каждый филиал банка находится в определенном районе.

Т.е. таблица Филиал вот так выглядит

Филиал

НомерФилиала /PrimaryKey/
Район /Текстовый/

В одном районе могут находиться несколько филиалов банка.

Надо вывести клиентов , которые имеют счета в разных филиалах банка, расположенных в одном районе.

У меня уже голова пухнет, ночью продолбился и результат нулевой

Помогите , прошу Вас, вся надежда на Вас господа монстры!!!
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32460311
фыыф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну ты, ппплин, в конец обленился. Не говоря о том, что есть с пяток возможных расшифровок "новой задачи". Одну из возможных попробуй так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
SELECT DISTINCT К.КодКлиента, К.ФИО, Ф0.Район,
 (SELECT Count(Ф.НомерФилиала) AS Count_НомерФилиала
   FROM Филиал AS Ф INNER JOIN [СчетКлиента] AS С
   ON Ф.НомерФилиала = С.НомерФлиала
   WHERE Ф0.Район = Ф.Район
   AND  С0.КодКлиента=С.КодКлиента 
   GROUP BY Ф.Район) AS CountRegion
FROM Филиал AS Ф0 INNER JOIN 
  (Клиент AS К INNER JOIN [СчетКлиента] AS С0 
     ON К.КодКлиента = С0.КодКлиента)
  ON Ф0.НомерФилиала = С0.НомерФлиала
  WHERE Exists 
    (SELECT Count(Ф.НомерФилиала) AS Count_НомерФилиала
      FROM Филиал AS Ф INNER JOIN [СчетКлиента] AS С
      ON Ф.НомерФилиала = С.НомерФлиала
      WHERE Ф0.Район = Ф.Район 
      AND  С0.КодКлиента=С.КодКлиента 
      GROUP BY Ф.Район
      HAVING Count(*) > 1 );


Или, если данные о районе и кол-ве вхождений в результат не нужны:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SELECT DISTINCTROW  К.КодКлиента, К.ФИО
 FROM Филиал AS Ф0 INNER JOIN 
  (Клиент AS К INNER JOIN [СчетКлиента] AS С0 
     ON К.КодКлиента = С0.КодКлиента)
  ON Ф0.НомерФилиала = С0.НомерФлиала
  WHERE Exists 
    (SELECT Count(Ф.НомерФилиала) AS Count_НомерФилиала
    FROM Филиал AS Ф INNER JOIN [СчетКлиента] AS С
    ON Ф.НомерФилиала = С.НомерФлиала
    WHERE Ф0.Район = Ф.Район 
    AND  С0.КодКлиента=С.КодКлиента 
GROUP BY Ф.Район
HAVING Count(*) > 1 );


ЗЫ. И зря пытаесся народ "монстрами" пообзывать.
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32460499
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большое спасибо.
Огромадное!!!
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32461545
Фотография Axeleron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
... а за монстров - ответишь!
...
Рейтинг: 0 / 0
Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
    #32461660
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В любое время!
...
Рейтинг: 0 / 0
38 сообщений из 38, показаны все 2 страниц
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ребята! Монстры аксеса помогите!!! Надо запрос сделать очень мудреный! Я незнаю как...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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