|
Обработка результатов сложного запроса, как?
|
|||
---|---|---|---|
#18+
Задача следующая - есть несколько таблиц, в каждой есть специальная метка, можно сделать даже тип данных специальный для нее. Нужно во всех запросах эту метку выводить, но так, чтобы при любом запросе, например с объединением, в каждой результирующей строке была одна метка, вычисленная как максимум из всех меток записей, вошедших в результирующую строку. Что-то у меня идей не наблюдается :( ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2003, 11:41 |
|
Обработка результатов сложного запроса, как?
|
|||
---|---|---|---|
#18+
load=# create table t1 ( id integer, name varchar(32) ); CREATE TABLE load=# create table t2 ( id integer, name varchar(32) ); CREATE TABLE load=# create table t3 ( id integer, name varchar(32) ); CREATE TABLE load=# load=# insert into t1 values ( 1, 'abc' ); INSERT 3828966 1 load=# insert into t2 values ( 1, 'def' ); INSERT 3828967 1 load=# insert into t3 values ( 1, 'ghi' ); INSERT 3828968 1 load=# select id, max(name) as name from ( select id, name from t1 union select id, name from t2 union select id, name from t3 ) as a group by id; id | name ----+------ 1 | ghi (1 row) load=# select id, case when t1.name>t2.name and t1.name>t3.name then t1.name else case when t2.name>t3.name then t2.name else t3.name end end as name from t1 join t2 using ( id ) join t3 using ( id ); id | name ----+------ 1 | ghi (1 row) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.10.2003, 15:25 |
|
|
start [/forum/moderation_log.php?user_name=%D0%98%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
159ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 339ms |
total: | 614ms |
0 / 0 |