powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Select через переменную
13 сообщений из 13, страница 1 из 1
Select через переменную
    #39761389
Максим_78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Скажите пожалуйста, возможно ли заселектить таблицу с помощью переменной?
К примеру:

DECLARE @Cond nvarchar(max)
--
SET @Cond = 'НАИМЕНОВАНИЕ ПОЛЯ В ТАБЛИЦЕ'
select @Cond
from [ТАБЛИЦА]
where .........

Спасибо!
...
Рейтинг: 0 / 0
Select через переменную
    #39761392
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
DECLARE @Cond nvarchar(max)
--
SET	@Cond =	'НАИМЕНОВАНИЕ ПОЛЯ В ТАБЛИЦЕ'	
from	[ТАБЛИЦА]
where	.........


вот так можно.
только это скорее всего не то, что вам надо
...
Рейтинг: 0 / 0
Select через переменную
    #39761393
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим_78Скажите пожалуйста, возможно ли заселектить таблицу с помощью переменной?См. EXECUTE
...
Рейтинг: 0 / 0
Select через переменную
    #39761397
Andy_OLAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим_78Добрый день!
Скажите пожалуйста, возможно ли заселектить таблицу с помощью переменной?
К примеру:

DECLARE @Cond nvarchar(max)
--
SET @Cond = 'НАИМЕНОВАНИЕ ПОЛЯ В ТАБЛИЦЕ'
select @Cond
from [ТАБЛИЦА]
where .........

Спасибо!
Да, можно. Поскольку у Вас не varchar, а nvarchar - не забывайте делать N''
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
DECLARE @Cond nvarchar(max)
DECLARE @command_string nvarchar(max)
DECLARE @table_name nvarchar(max)
--
SET		@Cond =	N'НАИМЕНОВАНИЕ ПОЛЯ В ТАБЛИЦЕ'				

SET		@command_string =	convert(nvarchar(max),N'select ')+convert(nvarchar(max),@Cond)+convert(nvarchar(max),N' from [')+
convert(nvarchar(max),@table_name)+convert(nvarchar(max),N'] where ...')

exec(@command_string )
...
Рейтинг: 0 / 0
Select через переменную
    #39761398
Andy_OLAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andy_OLAP,

И не забыть сделать присваивание названия таблицы.
Код: sql
1.
SET		@table_name =	N'НАИМЕНОВАНИЕ ТАБЛИЦЫ'
...
Рейтинг: 0 / 0
Select через переменную
    #39761401
Максим_78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, конечно EXEC, я совсем забыл про него хотя когда-то пользовал))
Господа товарищи, спасибо за помощь!!!
...
Рейтинг: 0 / 0
Select через переменную
    #39761402
Фотография Ken@t
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
безопаснее
Код: sql
1.
SET @Cond = QUOTENAME('блабалабла')


ибо и так подход не очень .
...
Рейтинг: 0 / 0
Select через переменную
    #39761438
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yasha123
Код: sql
1.
2.
3.
4.
5.
DECLARE @Cond nvarchar(max)
--
SET	@Cond =	'НАИМЕНОВАНИЕ ПОЛЯ В ТАБЛИЦЕ'	
from	[ТАБЛИЦА]
where	.........



вот так можно.
только это скорее всего не то, что вам надоВот так нельзя.
...
Рейтинг: 0 / 0
Select через переменную
    #39761450
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iapYasha123
Код: sql
1.
2.
3.
4.
5.
DECLARE @Cond nvarchar(max)
--
SET	@Cond =	'НАИМЕНОВАНИЕ ПОЛЯ В ТАБЛИЦЕ'	
from	[ТАБЛИЦА]
where	.........



вот так можно.
только это скорее всего не то, что вам надоВот так нельзя.
действительно, пардон.
имелось в виду
Код: sql
1.
2.
3.
4.
5.
DECLARE @Cond nvarchar(max)
--
select	@Cond =	'НАИМЕНОВАНИЕ ПОЛЯ В ТАБЛИЦЕ'	
from	[ТАБЛИЦА]
where	.........
...
Рейтинг: 0 / 0
Select через переменную
    #39761467
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Автор-то хотел всего лишь универсальный запрос всего по всему при любых условиях, известных и неизвестных.
...
Рейтинг: 0 / 0
Select через переменную
    #39761479
Максим_78
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владислав Колосов,

Да, именно так!))
...
Рейтинг: 0 / 0
Select через переменную
    #39761523
256k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yasha123iapпропущено...
Вот так нельзя.
действительно, пардон.
имелось в виду
Код: sql
1.
2.
3.
4.
5.
DECLARE @Cond nvarchar(max)
--
select	@Cond =	'НАИМЕНОВАНИЕ ПОЛЯ В ТАБЛИЦЕ'	
from	[ТАБЛИЦА]
where	............



Совсем другое дело!
зы. исправил немного
...
Рейтинг: 0 / 0
Select через переменную
    #39761604
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
256kYasha123пропущено...

действительно, пардон.
имелось в виду
Код: sql
1.
2.
3.
4.
5.
DECLARE @Cond nvarchar(max)
--
select	@Cond =	'НАИМЕНОВАНИЕ ПОЛЯ В ТАБЛИЦЕ'	
from	[ТАБЛИЦА]
where	............



Совсем другое дело!
зы. исправил немного
зато г-носмысл остался.
"заселектили таблицу в переменную".
и НАИМЕНОВАНИЕ ПОЛЯ В ТАБЛИЦЕ все там же
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Select через переменную
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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