Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 В поле содержится условие - запрос  [new]
alm2
Member

Откуда: Самара
Сообщений: 232
В таблице есть поле USL с условием, например,
57>=7


как сделать запрос
Select * from table where выполняется условие в поле USL
26 сен 19, 13:57    [21979802]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36691
Динамический запрос.
26 сен 19, 13:59    [21979807]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
alm2
Member

Откуда: Самара
Сообщений: 232
Гавриленко Сергей Алексеевич,

Пример ?
26 сен 19, 14:23    [21979870]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6794
alm2,

DROP TABLE IF EXISTS  #temp 
CREATE TABLE #temp (cond varchar(255));

INSERT INTO #temp VALUES('57>=7')

DECLARE @sql varchar(max) 

SELECT TOP 1   @sql  = 'SELECT 1 WHERE ' + cond FROM #Temp 

EXEC (@sql)


умельцы и через xml могут
26 сен 19, 14:30    [21979883]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
alm2
Member

Откуда: Самара
Сообщений: 232
TaPaK,
Не получается:

В поле UUU содержится текст 57>=7

select * from tmp_sasa_260919 where uuu

Выдает:

Сообщение 4145, уровень 15, состояние 1, строка 1
Рядом с "uuu" в контексте, где ожидается условие, указано выражение типа, отличного от логического.
26 сен 19, 16:00    [21980037]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6794
alm2
TaPaK,
Не получается:

В поле UUU содержится текст 57>=7

select * from tmp_sasa_260919 where uuu

Выдает:

Сообщение 4145, уровень 15, состояние 1, строка 1
Рядом с "uuu" в контексте, где ожидается условие, указано выражение типа, отличного от логического.

не, ну тут к окулисту только вариант
26 сен 19, 16:01    [21980039]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
Ролг Хупин
Member

Откуда: Чебаркуль
Сообщений: 3444
TaPaK
alm2
TaPaK,
Не получается:

В поле UUU содержится текст 57>=7

select * from tmp_sasa_260919 where uuu

Выдает:

Сообщение 4145, уровень 15, состояние 1, строка 1
Рядом с "uuu" в контексте, где ожидается условие, указано выражение типа, отличного от логического.

не, ну тут к окулисту только вариант


это для начала
27 сен 19, 09:43    [21980519]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
Minamoto
Member

Откуда: Москва
Сообщений: 1162
alm2, по вашей закрытой теме ответ:

declare @ED varchar(10), @sql nvarchar(MAX), @result bit
set @ED = '55> 100 '
SET @sql = 'if ' + @ED + ' set @result = 1 else set @result = 0'

EXEC sys.sp_executesql @stmt = @sql, @params = N'@result bit output', @result = @result OUTPUT

SELECT @result
27 сен 19, 14:26    [21980926]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6794
Minamoto
alm2, по вашей закрытой теме ответ:

declare @ED varchar(10), @sql nvarchar(MAX), @result bit
set @ED = '55> 100 '
SET @sql = 'if ' + @ED + ' set @result = 1 else set @result = 0'

EXEC sys.sp_executesql @stmt = @sql, @params = N'@result bit output', @result = @result OUTPUT

SELECT @result

и это типа в функцию влезет?
27 сен 19, 14:31    [21980933]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36691
В обычную функцию такое все равно не запихнуть.
27 сен 19, 14:31    [21980934]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
Minamoto
Member

Откуда: Москва
Сообщений: 1162
TaPaK
и это типа в функцию влезет?

Нет, я специально написал, что это про вопрос из другой темы, в которую нельзя ответить, т.к. она закрыта.
27 сен 19, 15:00    [21980965]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6794
Minamoto
TaPaK
и это типа в функцию влезет?

Нет, я специально написал, что это про вопрос из другой темы, в которую нельзя ответить, т.к. она закрыта.

и там как раз про функцию вопрос
27 сен 19, 15:06    [21980978]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
Minamoto
Member

Откуда: Москва
Сообщений: 1162
TaPaK
Minamoto
пропущено...

Нет, я специально написал, что это про вопрос из другой темы, в которую нельзя ответить, т.к. она закрыта.

и там как раз про функцию вопрос
Уговорили, не обратил внимания.
Тогда да, единственный для ТС вариант:

TaPaK
тут к окулисту только
27 сен 19, 15:16    [21980988]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
alm2
Member

Откуда: Самара
Сообщений: 232
TaPaK,

Спасибо, но мне нужно по всей таблице, а не по одной записи.
28 сен 19, 06:42    [21981496]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
alm2
Member

Откуда: Самара
Сообщений: 232
[quot TaPaK]alm2,

DROP TABLE IF EXISTS  #temp 
CREATE TABLE #temp (cond varchar(255));

INSERT INTO #temp VALUES('57>=7')

DECLARE @sql varchar(max) 

SELECT TOP 1   @sql  = 'SELECT 1 WHERE ' + cond FROM #Temp 

EXEC (@sql)




Спасибо, но мне нужно по всей таблице, а не по одной записи.
28 сен 19, 06:49    [21981498]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
court
Member

Откуда:
Сообщений: 1956
alm2
мне нужно по всей таблице, а не по одной записи
давно не "советовал плохого" :)

тут 21685462 возмёшь функцию
и дальше всё просто

CREATE TABLE #temp (cond varchar(255));

INSERT INTO #temp VALUES('57>=7')
INSERT INTO #temp VALUES('57<7')

select * from #temp where dbo.fnEvalJS(cond) = 'true'

cond
57>=7
28 сен 19, 07:41    [21981503]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 30745
alm2
TaPaK
alm2,

DROP TABLE IF EXISTS  #temp 
CREATE TABLE #temp (cond varchar(255));

INSERT INTO #temp VALUES('57>=7')

DECLARE @sql varchar(max) 

SELECT TOP 1   @sql  = 'SELECT 1 WHERE ' + cond FROM #Temp 

EXEC (@sql)

Спасибо, но мне нужно по всей таблице, а не по одной записи.
Вы это всё серьёзно пишите? Это не розыгрыш?
28 сен 19, 08:47    [21981525]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36691
alexeyvg
alm2
пропущено...

Спасибо, но мне нужно по всей таблице, а не по одной записи.
Вы это всё серьёзно пишите? Это не розыгрыш?
"Я архитектор, я так вижу!" (с)
28 сен 19, 12:49    [21981613]     Ответить | Цитировать Сообщить модератору
 Re: В поле содержится условие - запрос  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 4098
alexeyvg
alm2
пропущено...

Спасибо, но мне нужно по всей таблице, а не по одной записи.
Вы это всё серьёзно пишите? Это не розыгрыш?

Окулиста тут уже недостаточно!
29 сен 19, 13:50    [21981981]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить