powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите с простым запросом
13 сообщений из 13, страница 1 из 1
Помогите с простым запросом
    #33214336
Лисонька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Леди и джентельмены!
Прошу подсказки, такой простой запрос мне самой одолеть не под силу. Я могу, конечно, сдалть все через SCAN и COUNT FOR, но такой подход наверняка устарел. Вразумите, пожалуйста, на таком примере:
Таблица Таб1: nИдКлиент, сФио, сСорт.
Клиент может иметь как только одну запись в таблице, так и n-ное их количество, а значение поля сСорт у них в записях может быть одним и тем же, а может и различным в каждой записи.
Задача следующая: нужно сделать выборку тех клиентов, у которых несколько записей по одному и тому же сСорт с указанием количества таких записей.
Что-то вроде такой выборки должно выйти:
976 Иванов И.И. Гранд 6
27 Петров П.П. ИВЦ 2
27 Петров П.П. Гранд 4
27 Петров П.П. Франт 2
112 Сидоров С.С. ИВЦ 2
544 Ян О.Д. Озон 5
Извините за путанный вопрос.

Благодарю.
...
Рейтинг: 0 / 0
Помогите с простым запросом
    #33214358
Иван Махно
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
SET ENGINEBEHAVIOR  70  
SELECT CNT(t1.сСорт) as _cnt,;
t1. nИдКлиент,;
t1.сФио,;
t1.сСорт;
FROM  Таб1 t1 GROUP BY t1.сСорт 
...
Рейтинг: 0 / 0
Помогите с простым запросом
    #33214370
Фотография Анатолий Широков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
select nИдКлиент, сФио, сСорт, count(*) as cnt ;
from Таб1 ;
group by nИдКлиент, сФио, сСорт ;
having count(*) >  1 
...
Рейтинг: 0 / 0
Помогите с простым запросом
    #33214400
GoshaS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
SELECT  id_klient,  fio, csort, CNT(csort) as rec_cou ;
FROM tab1  ;
GROUP BY  3 ,  1 ,  2  ;
HAVING rec_cou> 1  ;
ORDER BY fio
...
Рейтинг: 0 / 0
Помогите с простым запросом
    #33214402
GoshaS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IMHO
Т.е. в GROUP BY надо первым писать идентификатор сорта, т.е. сколько одного из сортов у клиента, потом индетификатор клиента, потом ФИО т.к. ФИО у клиентов может совпадать
...
Рейтинг: 0 / 0
Помогите с простым запросом
    #33214413
Фотография Анатолий Широков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 GoshaS

Hикакого значения поряд в GROUP BY не играет. Что так, что так - результат запроса будет одним и тем же. Важна совокупность этих полей.
...
Рейтинг: 0 / 0
Помогите с простым запросом
    #33214418
GoshaS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Анатолий Широков2 GoshaS

Hикакого значения поряд в GROUP BY не играет. Что так, что так - результат запроса будет одним и тем же. Важна совокупность этих полей.
согласен, был неправ
...
Рейтинг: 0 / 0
Помогите с простым запросом
    #33214448
Лисонька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Леди и джентельмены (по никам судить не буду, извините)!
Благодарю вас всех, запрос работает. Действительно, никакого значения порядок в GROUP BY не играет, я эксперементировала. Особая благодарность Ивану Махно за SET ENGINEBEHAVIOR, я об этой команде раньше не знала, а т.к. у меня есть и 7 и 8 Фокс, то должно пригодиться.
...
Рейтинг: 0 / 0
Помогите с простым запросом
    #33216598
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi Лисонька!

Вообще-то писать лучше так, чтобы НЕ было никогда потребности в SET
ENGINEBEHAVIOUR 70. Это переключение на заведомо ошибочную работу -
применяется лишь если катастрофически нету времени на приведение запросов в
порядок, и надо обеспечить хоть какое-то функционирование системы написанной
на более древней версии фокса.

Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
Помогите с простым запросом
    #33216836
Лисонька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Igor Korolyov
Hi Лисонька!

Вообще-то писать лучше так, чтобы НЕ было никогда потребности в SET
ENGINEBEHAVIOUR 70. Это переключение на заведомо ошибочную работу -
применяется лишь если катастрофически нету времени на приведение запросов в
порядок, и надо обеспечить хоть какое-то функционирование системы написанной
на более древней версии фокса.

Posted via ActualForum NNTP Server 1.2
Мне хотя бы с SQL в 7 подружится, а про 8 я пока и не думаю, его я поставила совсем недавно.
Кстати, леди и джентельмены, запускаю свои семерышные приложения в 8, а лейблы в формах меняются на жирный и получается каля-маля. Можно ли этого как-нибудь избежать или все придется править ручками?
Благодарю.
...
Рейтинг: 0 / 0
Помогите с простым запросом
    #33218147
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi Лисонька!

> Мне хотя бы с SQL в 7 подружится, а про 8 я пока и не думаю, его я
> поставила совсем недавно.

Они не отличаются кардинально, просто в 8-ке запретили ряд приёмов, которые
до того не вызывали ошибок, но приводили к слабо предсказуемым результатам
(в частности наличие в запросе НЕгруппируемых и НЕагрегируемых полей).

> а лейблы в формах меняются на жирный и получается каля-маля.

Дык настройки смотри - Themes, Style...
У меня при штатной виндовой теме всё нормально выглядит.

Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
Помогите с простым запросом
    #33219330
Лисонька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Igor Korolyov
Дык настройки смотри - Themes, Style...
У меня при штатной виндовой теме всё нормально выглядит.
Это смотреть в системе или в Фоксе?
Подпись: Ламерша :-(

Если серьезно, я настройки тем системы не меняла
...
Рейтинг: 0 / 0
Помогите с простым запросом
    #33219332
Проходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Themes и Style - это в фоксе. Поставь в своих формах Themes в off и получишь такой же вид, как и в 7-ке.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите с простым запросом
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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