|
|
|
Подстановка в SELECT имени столбца из переменной
|
|||
|---|---|---|---|
|
#18+
MSSQL2000 Исходные данные: имеем таблицу MYTAB, количество столбцов 1..100 из какого столбца делать выборку определяется динамически в зависимости от условий Попытка решения: DECLARE @Vint1 int, @na char(5),@N tinyint ------------------------------------------ Допустим индекс столбца, определенный в другой процедуре равен 6 ------------------------------------------ SET @N = 6 ------------------------------------------ Заносим в переменную @Vint1 id таблицы MYTAB ----------------------------------------------- Select @Vint1=id FROM sysobjects WHERE name='MYTAB' ----------------------------------------------- Используем встроенную функцию COL_NAME(indexTab,indexColumn) для определения имени столбца из которого нужно сделать выборку присваиваем результат переменной @na ----------------------------------------------- SELECT TOP 1 @na=COL_NAME(@Vint1,@N) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'MYTAB' ----------------------------------------------- пытаюсь получить значение из столбца, имя которого находится в переменной @na и дополнительного условия ------------------------------------------------ SELECT @na FROM MYTAB WHERE (MYTAB.Summa = 54) ------------------------------------------------ Результат- возвращает имя столбца, а мне нужно значение в этом столбце!!! Подскажите как решить данную задачу, какие функции можно использовать, может синтаксис неправильный ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2002, 22:29:51 |
|
||
|
Подстановка в SELECT имени столбца из переменной
|
|||
|---|---|---|---|
|
#18+
используй динамичиский запрос.... Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2002, 23:39:24 |
|
||
|
Подстановка в SELECT имени столбца из переменной
|
|||
|---|---|---|---|
|
#18+
да и вместо declare @na char(5) пользуй @na sysname или хотябы varchar.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2002, 23:41:34 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32064393&tid=1819112]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
37ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
41ms |
get tp. blocked users: |
2ms |
| others: | 211ms |
| total: | 336ms |

| 0 / 0 |
