|
|
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
Не люблю я курсоры. Просто не люблю. Может кто подскажет как можно избежать курсора если нужно сделать так: DECLARE @NO AS INT, @i AS INT SET @i=0 DECLARE UPTD CURSOR FOR select NO from tb OPEN UPTD FETCH NEXT FROM UPTD INTO @JNO while @@FETCH_STATUS <> -1 BEGIN UPDATE tb SET NO=@i+1 SET @i=@i+1 FETCH NEXT FROM UPTD INTO @NO END CLOSE UPTD DEALLOCATE UPTD ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2002, 16:52:29 |
|
||
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
Если я не стормозил, то Ваш код делает именно это: Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2002, 16:58:16 |
|
||
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
Самое простое так DECLARE @NO AS INT, @i AS INT SET @i=0 while @i<@no begin select @i=@i+1 end ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2002, 16:58:25 |
|
||
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
Да уж, странный код. Словами объясните что нужно то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2002, 17:01:10 |
|
||
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
Сегодня что 1 Апреля ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2002, 17:03:03 |
|
||
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
Может, что-то вроде этого? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. Вопрос нумерации строк обсуждался на форуме не раз. Воспользуйтесь поиском, чтобы найти все предложенные варианты. С уважением, Александр Степанов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2002, 17:19:26 |
|
||
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
Если словами то так: имеем таблицу и надо один из столбцов в ней пронумеровать основываясь на значениях другого столбца при этом необходимо учитывать порядок сортировки оного т.е. col1 col2 col3 4 qqq 2456 1 mmm 1455 4 yyy 2456 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2002, 18:01:19 |
|
||
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
имеем таблицу и надо один из столбцов в ней пронумеровать основываясь на значениях другого столбца при этом необходимо учитывать порядок сортировки оного Тогда вариант Степанова не подходит. Я бы сделал так: Код: plaintext 1. 2. 3. 4. 5. 6. Если сервер 2000-й можно вместо временной таблицы использовать переменную типа table. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2002, 11:16:37 |
|
||
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
Сорри, пропустил order by col3 при вставке во временную таблицу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2002, 11:19:04 |
|
||
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
To Genady В первоначальной постановке задачи (т.е. скрипте) никакими order by и не пахло :-))) Если нужен именно order by, то IMHO вариант с временной таблицей мне нравится больше остальных. Тем не менее настоятельно рекомендую Вике воспользоваться поиском и посмотреть на все предложенные варианты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2002, 12:55:19 |
|
||
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
В первоначальной постановке задачи (т.е. скрипте) никакими order by и не пахло :-))) А в скрипте и нумерацией не пахло, то что делает скрипт Jimmy в трех строках изобразил. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2002, 13:23:29 |
|
||
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
To Genady Правда ваша! Каюсь, невнимательно посмотрел, с кем не бывает! ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2002, 13:50:29 |
|
||
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
Не удивлюсь если здесь появится постинг: " Ну что, SQL - эротоманы, здорово я вас зацепила на слабости к женскому полу, такую белеберду заставила на полном серьезе решать" GreenSunrise ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2002, 13:56:48 |
|
||
|
Как избежать курсора? помогите люди добрые!
|
|||
|---|---|---|---|
|
#18+
Дико извиняюсь за влезание в беседу, MichaelGK, у меня к вам вопрос - а я-то тут при чем? Не припомню за собой привычки плодить идиотские топики. Может, покажете? Я вообще редко здесь что-либо спрашиваю. P.S. Под другими никами не захожу, поверьте на слово. P.P.S. Съем мышиный коврик, если найдете хоть один мой топик, где была попытка сыграть на жалости к женскому полу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2002, 16:23:49 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32047977&tid=1820622]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
121ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 262ms |
| total: | 482ms |

| 0 / 0 |
