ник: Силblч
ну примерно так :) подробно,чтобы понятна была как хороводы водить ы
1. создаем запрос, где пересекаем декартово одну и туже таблицу с ID
SELECT d1.id AS id1, d2.id AS id2
FROM d AS d1, d AS d2;
|
называем её "decart" ыыыы
2. создаем запрос на основе п.1 и называем его "decartun" уникальный патамушта! по ходу записей вроде будет больше чем, нам надо в выборку , но мы не боимся трудностей и в принципе можем ограничить это дело, но не будем!
SELECT [id1]+[id2] AS Выражение1
FROM decart
GROUP BY [id1]+[id2];
|
3. теперь такой запрос, который назовем "decartnn" и в котором пронумеруем по порядку все запси - они то у нас получились из предыдущего запроса уникальными, йо.
SELECT DCount("Выражение1","decartun","Выражение1<=" & CStr(decartun.Выражение1))*1 AS nn, decartun.Выражение1
FROM decartun;
|
4. финализируем пятничные изыскания
SELECT decartnn.nn, d.id
FROM decartnn LEFT JOIN d ON decartnn.nn = d.id;
|
результат, как грицца, на лице
nn__id
1___1
2___2
3___3
4___
5___5
6___
7___
8___8
9___9
10__
11__
12__
13__13
14__14
15__
16__
17__
18__
19__
20__
21__
22__
23__
24__
|
хороших выходных :)