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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.10.2010, 12:28   #1
Diamand
Форумчанин
 
Аватар для Diamand
 
Регистрация: 07.04.2007
Сообщений: 102
По умолчанию выбор полей где меньше повторений

Добрый день.

подскажите пожалуйста как в запросе выбрать те поля где меньше повторяющихся значений посмотрите плиз то что то не особо получается.
Вложения
Тип файла: rar dbb.rar (8.8 Кб, 7 просмотров)
Diamand вне форума Ответить с цитированием
Старый 08.10.2010, 14:19   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

а что собственно надо то?!
у Вас таблице 4ре записи,
две таких:
Код:
Kod1	Kod2	Kod3
1	22	33
и две таких:
Код:
Kod1	Kod2	Kod3
2	22	33
что Вы хотите получить?! Где здесь "меньше повторяющихся значений" ?!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 08.10.2010, 14:49   #3
Diamand
Форумчанин
 
Аватар для Diamand
 
Регистрация: 07.04.2007
Сообщений: 102
По умолчанию

я хочу сделать запрос на выборку так чтобы он сравнивал поля код 1...код3
и где меньше содержится повторяющихся записей, то поле и выводил в моём примере это поле (код1) т.к 1 и 2 повторяются всего по 2 раза а в поле (код2) 22 повторяется 4 раза и т.д.

Последний раз редактировалось Diamand; 08.10.2010 в 15:15.
Diamand вне форума Ответить с цитированием
Старый 08.10.2010, 16:22   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ну и задачка... Вы ТОЧНО уверены, что Вам именно это нужно?!
вот запрос, который возвратит, сколько различных чисел в каждом из полей:
Код:
SELECT TOP 1 (select COUNT(*) from (SELECT KOD1
FROM Tab1
GROUP BY KOD1)) as CntKod1, 
(select COUNT(*) from (SELECT KOD2
FROM Tab1
GROUP BY KOD2)) as CntKod2,
(select COUNT(*) from (SELECT KOD3
FROM Tab1
GROUP BY KOD3)) as CntKod3  FROM Tab1;
Чем больше число, тем меньше повторяющихся значений...

тогда запрос, который решает вашу задачу (если я правильно понял)
Код:
SELECT  EntryNo, IIF((CntKod1>CntKod2) and (CntKod1>CntKod3), KOD1, IIF((CntKod2>CntKod1) and (CntKod2>CntKod3), KOD2, KOD3)) as KOD_REDKIY
FROM 
(SELECT Tab1.*, (select COUNT(*) from (SELECT KOD1
FROM Tab1
GROUP BY KOD1)) as CntKod1, 
(select COUNT(*) from (SELECT KOD2
FROM Tab1
GROUP BY KOD2)) as CntKod2,
(select COUNT(*) from (SELECT KOD3
FROM Tab1
GROUP BY KOD3)) as CntKod3  FROM Tab1);
Serge_Bliznykov вне форума Ответить с цитированием
Старый 08.10.2010, 16:41   #5
Diamand
Форумчанин
 
Аватар для Diamand
 
Регистрация: 07.04.2007
Сообщений: 102
По умолчанию

да последний запрос именно то и делает что я хотел огромное вам СПАСИБО !!!!!1
Diamand вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Последовательный выбор товара посредством полей со списками Reinforced Microsoft Office Access 3 06.11.2012 21:14
Количество повторений в столбце Raz0r Microsoft Office Excel 12 24.12.2010 20:46
Выбор полей одного типа Rekky SQL, базы данных 6 03.02.2010 12:23
При удалении записей значения полей с type:=Autoincrement (т.е+) в оставшихся полей не изменяются kenta БД в Delphi 2 29.10.2009 08:28
Объеденение полей запроса в для отображения нескольких полей в одном списке mrCreator Microsoft Office Access 3 08.08.2009 00:53