Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Выборка данных из одной таблицы по совпадению / 6 сообщений из 6, страница 1 из 1
05.02.2016, 10:30
    #39163602
FedorovMG
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных из одной таблицы по совпадению
Здравствуйте.
Возникла потребность в выборке данных из таблица Access.
Есть таблица с примерно таким содержанием:

N1 N2 N3 N4 N5 N6
......
8 15 23 30 60 76
12 18 21 25 26 89
5 18 19 26 89 95
.....

Нужно выбрать следующим образом - если есть более трех совпадений с условием. Например 5 18 19 26


P.S. Не знаю насколько корректно описал.
...
Рейтинг: 0 / 0
05.02.2016, 10:40
    #39163610
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных из одной таблицы по совпадению
Нормализуйте таблицу.
...
Рейтинг: 0 / 0
05.02.2016, 10:42
    #39163616
MrShin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных из одной таблицы по совпадению
Первое, что приходит на ум - сделать в запросе вычисляемую колонку, где функция возвращает ряд чисел из остальных колонок в виде строки - отсортировать числа и конвертировать в строку, разделим числа любым символом, например для 3-й строки 5_18_19_26_89_95. Потом просто сравниваем по like с условием
...
Рейтинг: 0 / 0
05.02.2016, 10:50
    #39163626
FedorovMG
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных из одной таблицы по совпадению
Что значит нормализуйте?
...
Рейтинг: 0 / 0
05.02.2016, 11:35
    #39163694
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных из одной таблицы по совпадению
FedorovMG,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT G.Код,  W.Код
FROM Лист3 AS W, Лист3 AS G
WHERE (INSTR( "`" & W.N1 & "`" & W.N2 & "`" & W.N3 & "`" & W.N4 & "`" & W.N5 & "`" & W.N6 & "`","`" & G.N1 & "`")>0) +
(INSTR( "`" & W.N1 & "`" & W.N2 & "`" & W.N3 & "`" & W.N4 & "`" & W.N5 & "`" & W.N6 & "`","`" & G.N2 & "`")>0) +
(INSTR( "`" & W.N1 & "`" & W.N2 & "`" & W.N3 & "`" & W.N4 & "`" & W.N5 & "`" & W.N6 & "`","`" & G.N3 & "`")>0) +
(INSTR( "`" & W.N1 & "`" & W.N2 & "`" & W.N3 & "`" & W.N4 & "`" & W.N5 & "`" & W.N6 & "`","`" & G.N4 & "`")>0) +
(INSTR( "`" & W.N1 & "`" & W.N2 & "`" & W.N3 & "`" & W.N4 & "`" & W.N5 & "`" & W.N6 & "`","`" & G.N5 & "`")>0) +
(INSTR( "`" & W.N1 & "`" & W.N2 & "`" & W.N3 & "`" & W.N4 & "`" & W.N5 & "`" & W.N6 & "`","`" & G.N6 & "`")>0) <=-3
AND W.Код<G.Код;



G.КодW.Код415154

КодN1N2N3N4N5N612618192632815233060763121821252694518192689955452631999
...
Рейтинг: 0 / 0
05.02.2016, 12:02
    #39163732
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выборка данных из одной таблицы по совпадению
FedorovMGЧто значит нормализуйте?
Преобразуйте
N1 N2 N3 N4 N5 N68 15 23 30 60 7612 18 21 25 26 89..................
в
RecordID ParameterID Value118 1215 1323 1430 1560 16762112 2218 2321 .........
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Выборка данных из одной таблицы по совпадению / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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