|
Хитрый запрос (...ну или по крайней мере не простой)
|
|||
---|---|---|---|
#18+
Здравствуйте, уважаемые. Такая ситуация - есть две таблицы данных ( А и Б ) и одно таблица связей между А и Б - связи типа *->* (что в вольном переводе с англ означает стенка на стенку или МНОГО -> МНОГО) - Вот. в таблице А есть поле номер , а таблице Б есть поле Класс продукта ( значение >= -1). соответственно нужно выбрать первые (вторые, третьи ....и т.д. ) N уникальных записей из таблицы А отсортированных по полю Класс продукта - .....уже наверное все попробовал....не знаю что делать... не методами sql - shit какой -то получается ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2004, 07:26 |
|
Хитрый запрос (...ну или по крайней мере не простой)
|
|||
---|---|---|---|
#18+
Как-то непонятно Вы тут написали, хоть бы определение таблиц привели... Код: plaintext 1. 2.
По какому полю связывать эти таблицы собираетесь? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2004, 08:22 |
|
Хитрый запрос (...ну или по крайней мере не простой)
|
|||
---|---|---|---|
#18+
\d tradelinks Table "public.tradelinks" Column | Type | Modifiers --------+------------------------+------------------------------------------------------------ id | integer | not null default nextval('public.tradelinks_id_seq'::text) url | character varying(70) | view | character varying(50) | title | character varying(150) | code | integer | default 0 \d classifier; Table "public.classifier" Column | Type | Modifiers -------------+-----------------------+------------------------------------------------------------ id | integer | not null default nextval('public.classifier_id_seq'::text) level | smallint | not null code | smallint | not null title | character varying(60) | description | text | about | text | parentid | integer | Indexes: classifier_pkey primary key btree (id) Foreign Key constraints: $1 FOREIGN KEY (parentid) REFERENCES classifier(id) ON UPDATE CASCADE ON DELETE SET NULL \d tl2sb Table "public.tl2sb" Column | Type | Modifiers --------+---------+------------------------------------------------------- id | integer | not null default nextval('public.tl2sb_id_seq'::text) tlid | integer | cid | integer | date | date | default ('now'::text)::date Indexes: tl2sb_pkey primary key btree (id) tl2sb.cid = это значение поля classifier.id tl2sb.tlid = это значение поля tradelinks.id Вот \d tl2sb Table "public.tl2sb" Column | Type | Modifiers --------+---------+------------------------------------------------------- id | integer | not null default nextval('public.tl2sb_id_seq'::text) tlid | integer | cid | integer | date | date | default ('now'::text)::date Indexes: tl2sb_pkey primary key btree (id) SELECT tlid , cid from tl2sb ORDER BY cid; tlid | cid ------+----- 2 | -1 8 | -1 1 | 0 3 | 0 4 | 0 5 | 0 6 | 0 7 | 0 8 | 0 9 | 5 8 | 5 8 | 9 1 | 9 и имея такой список именно в этом порядке нужно разбить его на порции - уникальные tlid, - то есть первая порция в 4 уникальные tlid - это 2 8 1 3 , вторая порция - это 4 5 6 7, третья порция - (8 пропускаем ), 9 (8 пропускаем), (8 пропускаем), (1 пропускаем) и далее по списку ( если таковой имеется) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2004, 08:39 |
|
Хитрый запрос (...ну или по крайней мере не простой)
|
|||
---|---|---|---|
#18+
SELECT tlid, min(cid) as min_cid from tl2sb GROUP BY tlid ORDER BY min_cid; Это вам подойдет? Если нет, то расскажите, что вы хотите делать с этими "порциями-четверками" далее? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.02.2004, 12:05 |
|
|
start [/forum/topic.php?fid=53&fpage=359&tid=2007954]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
36ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
others: | 315ms |
total: | 467ms |
0 / 0 |