powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / SergSuper, select @t=@t + Field from Table не работает!!!
8 сообщений из 8, страница 1 из 1
SergSuper, select @t=@t + Field from Table не работает!!!
    #32008005
Slava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это Ваш совет из старой темы. Вот решил воспользоваться и на тебе, не работает. В BOL написано, что SELECT @Stm = Field FROM MyTable должен скалярную, т.е. одну величину возвращеть, а если там набор, то @Stm будет содержать последнюю величину. А так жаль!!!
...
Рейтинг: 0 / 0
SergSuper, select @t=@t + Field from Table не работает!!!
    #32008013
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемый, дык я не понимаю в чем проблемма?
...
Рейтинг: 0 / 0
SergSuper, select @t=@t + Field from Table не работает!!!
    #32008017
rrr5
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Там не SELECT, a UPDATE должен быть.
...
Рейтинг: 0 / 0
SergSuper, select @t=@t + Field from Table не работает!!!
    #32008022
Slava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 SergSuper
Если я Вас расстроил, то прошу меня сразу же и бесповоротно извенить. Просто на первый взгляд конструкция очень красивая и могла еще кому-нибудь понравится. Я ее сразу в голове отложил. Все могут ошибаться. Так что у меня никаких проблем. Если на Вашем месте был бы другой, я бы поступил точно так же. Сколько раз я сам там был, уж и не сосчитать. В конце концов и Вы теперь знаете, что не надо ее применять.
Я это написал без всякой задней мысли. Ей богу! Мне как и всем тут очень важны Ваши советы. Пожалуйста не обижайтесь.
...
Рейтинг: 0 / 0
SergSuper, select @t=@t + Field from Table не работает!!!
    #32008039
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Slava
Да нет, я не обиделся, извиняюсь если был неправильно понят

Просто мне искренне не понятно, в чем проблемма, что не работает. Например такая конструкция не работает если стоит order by. А в остальном всё должно быть нормально.


Кстати "изв е нить" через "и" пишется, но это к делу не относиться
...
Рейтинг: 0 / 0
SergSuper, select @t=@t + Field from Table не работает!!!
    #32008040
GreenSunrise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, проблема пишется с одной М, то это тоже к делу не относится
...
Рейтинг: 0 / 0
SergSuper, select @t=@t + Field from Table не работает!!!
    #32008043
GreenSunrise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Slava:

Если заранее известно, что вернется одна строка, то SELECT @Stm = Field FROM MyTable можно и нужно использовать в таком виде. Например, select @count = count(*) from MyTable.
Если строк, возможно, будет несколько, то можно писать SELECT @Stm = @Stm + Field + @delimiter FROM MyTable - и пользуйся на здоровье! Вернется строка, содержащая все значения из набора, разделенные @delimiter'ом. На программисте остается ответственность за выбор первого или второго варианта.

А что ты, собственно, ожидал увидеть от первого варианта ?
...
Рейтинг: 0 / 0
SergSuper, select @t=@t + Field from Table не работает!!!
    #32008072
Slava
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
To All
The BOL has one topic(Index -> @local_variable). Read follwing text please.
Remarks
SELECT @local_variable is usually used to return a single value into the variable. It can return multiple values if, for example, expression is the name of a column. If the SELECT statement returns more than one value, the variable is assigned the last value returned.

If the SELECT statement returns no rows, the variable retains its present value. If expression is a scalar subquery that returns no value, the variable is set to NULL.
Я имел ввиду что @Stm не будет содержать конкатенацию всех значений Field. Поэтому и сказал, что "... не работает".
Разобрался (только что)! Надо было set @Stm = '' напсиать перед select. А вообще help в данном случае не совсем корректно написан: "If the SELECT statement returns more than one value, the variable is assigned the last value returned." В этом обзаце 3-е предложение надо переставить со вторым местами, тогда бы я не запутался.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / SergSuper, select @t=@t + Field from Table не работает!!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]