Гость
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / select where in / 9 сообщений из 9, страница 1 из 1
10.07.2012, 14:57
    #37873315
preslyel
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select where in
Пишу запрос в котором должно отображаться только те подмодели которые есть во временной таблице

set @tempval=(select distinct(''''+submodel) + ''', ' from dbo.testtable where make = @make and model=@model and year =@year for xml path(''))
set @tempval =substring(@tempval, 1, len(@tempval)-1)
set @count= (select count(distinct blockType)
from ##model where submodel in (@tempval) )

как понимаю переменная @tempval передается как строка и сравнение не происходит, как быть?
...
Рейтинг: 0 / 0
10.07.2012, 15:03
    #37873322
iap
iap
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select where in
preslyelкак понимаю переменная @tempval передается как строка и сравнение не происходит, как быть?А зачем нужна переменная @tempval ?
...
Рейтинг: 0 / 0
10.07.2012, 15:21
    #37873351
preslyel
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select where in
iap,
она в дальнейшем ещё нужна
да не суть, можно и без нее... проблемма же не в этом
...
Рейтинг: 0 / 0
10.07.2012, 15:22
    #37873357
Shakill
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select where in
preslyel,

проблема как раз в этом
можно же просто в in написать подзапрос
...
Рейтинг: 0 / 0
10.07.2012, 15:48
    #37873409
preslyel
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select where in
Оно то здорово, в таком случае пишет
Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Cyrillic_General_CI_AS" in the equal to operation.
у моей базы collation SQL_Latin1_General_CP1_CI_AS, откуда берется второй не понятно
...
Рейтинг: 0 / 0
10.07.2012, 15:53
    #37873425
Geep
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select where in
preslyelоткуда берется второй не понятно
временная таблица (у tempdb видимо по-умолчанию другой)
...
Рейтинг: 0 / 0
10.07.2012, 16:04
    #37873452
Shakill
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select where in
preslyelОно то здорово, в таком случае пишет
Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Cyrillic_General_CI_AS" in the equal to operation.
у моей базы collation SQL_Latin1_General_CP1_CI_AS, откуда берется второй не понятно

приведите к одному коллейшну, хотя бы явно в запросе
это ж не повод запихивать список значений из таблицы в текстовую переменную
...
Рейтинг: 0 / 0
10.07.2012, 17:45
    #37873703
preslyel
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select where in
ShakillpreslyelОно то здорово, в таком случае пишет
Cannot resolve the collation conflict between "SQL_Latin1_General_CP1_CI_AS" and "Cyrillic_General_CI_AS" in the equal to operation.
у моей базы collation SQL_Latin1_General_CP1_CI_AS, откуда берется второй не понятно

приведите к одному коллейшну, хотя бы явно в запросе
это ж не повод запихивать список значений из таблицы в текстовую переменную


Не могу найти примерчик, напишите если не сложно
...
Рейтинг: 0 / 0
10.07.2012, 17:48
    #37873711
preslyel
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
select where in
разобрался, работает... спс
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / select where in / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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