|
Замысловатый update
|
|||
---|---|---|---|
#18+
Как составить запрос, чтобы в таблице для каждого значения Col1 и соответствующего ему максимального Col2 в столбец Col3 проставить 1 ? Т.е. из, например Col1 Col2 Col3 ----- ------- ------- бук 8 NULL бук 11 NULL бук 6 NULL вяз 2 NULL вяз 4 NULL дуб 1 NULL дуб 5 NULL дуб 10 NULL получить Col1 Col2 Col3 ----- ------- ------- бук 8 NULL бук 11 1 бук 6 NULL вяз 2 NULL вяз 4 1 дуб 1 NULL дуб 5 NULL дуб 10 1 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2002, 16:37 |
|
Замысловатый update
|
|||
---|---|---|---|
#18+
да блина корелиров. запрос пишешь да и все тут... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2002, 17:55 |
|
Замысловатый update
|
|||
---|---|---|---|
#18+
Если на 9 то можно использовать CASE WHEN THEN ... |
|||
:
Нравится:
Не нравится:
|
|||
19.06.2002, 19:21 |
|
Замысловатый update
|
|||
---|---|---|---|
#18+
select amax.a, aall.b, decode(amax.bmax,null,null,1) from (select a,b,c from tree) aall, (select a, max(b) bmax from tree group by a) amax where aall.a=amax.a(+) and aall.b=amax.bmax(+); ... |
|||
:
Нравится:
Не нравится:
|
|||
21.06.2002, 18:14 |
|
Замысловатый update
|
|||
---|---|---|---|
#18+
create table my_table ( COL1 VARCHAR2(10), COL2 NUMBER(2), COL3 NUMBER(2) ) / --затем заноси твои значения и ... update my_table t2 set t2.col3 = 1 where t2.col2 = (select max(t.col2) from my_table t where t.col1 = t2.col1 group by t.col1) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2002, 17:08 |
|
|
start [/forum/topic.php?fid=52&msg=32032537&tid=1993295]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 126ms |
0 / 0 |