Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / опять к гуру:)) SELECT @res = @field / 5 сообщений из 5, страница 1 из 1
10.11.2002, 10:12:02
    #32065996
Гость
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
опять к гуру:)) SELECT @res = @field
MSSQL2000
Вопрос, как поселектить поле таблицы, заданное как строковая переменная и получить результат в другую переменную.
Пример (сильно утрированный):

CREATE TABLE _tmp (id INT NOT NULL,amount MONEY NOT NULL)

DECLARE @fName VARCHAR(32)
SET @fName = '[amount]'

DECLARE @result MONEY

SELECT @result = @fName
FROM _tmp
WHERE [id] = 5
...
Рейтинг: 0 / 0
10.11.2002, 11:28:31
    #32066027
LG
LG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
опять к гуру:)) SELECT @res = @field
Код: plaintext
1.
2.
3.
4.
5.
DECLARE @Query varchar( 1024 )

SET @Query = 'SELECT @result =' + @fName + 'FROM _tmp WHERE [id] = 5'

SELECT @Query
exec (@Query)
...
Рейтинг: 0 / 0
10.11.2002, 11:52:59
    #32066033
Александр Степанов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
опять к гуру:)) SELECT @res = @field
Наверное, все-таки так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
DECLARE @Query nvarchar( 1024 )
DECLARE @fName sysname
DECLARE @result sql_variant

Set @fName='name'

SET @Query = 'SELECT @result =[' + @fName + '] FROM sysobjects WHERE [id] = 1'

exec sp_executeSQL @Query, N'@result sql_variant OUTPUT', @result OUTPUT

Select @result
...
Рейтинг: 0 / 0
10.11.2002, 12:07:28
    #32066042
Гость
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
опять к гуру:)) SELECT @res = @field
Greate!
Вариант А.Степанова работает,
спасибо большое
...
Рейтинг: 0 / 0
10.11.2002, 12:12:26
    #32066044
MiCe
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
опять к гуру:)) SELECT @res = @field
Код: plaintext
1.
2.
3.
4.
5.
6.
DECLARE @fName sysname
Set @fName='name'
exec('DECLARE @result sql_variant
SELECT @result =[' + @fName + ']
FROM sysobjects
WHERE [id] = 1
select @result')
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / опять к гуру:)) SELECT @res = @field / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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