powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Странные вещи творятся...
6 сообщений из 6, страница 1 из 1
Странные вещи творятся...
    #32033179
DmitryN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, кто сталкивался: запускаю процедуру в QueryAnalyzer - получаю один набор данных, запускаю один в один эту же процедуру в SQL Explorer - получаю совсем другой набор:(( То есть, имеются совпадающие записи, но очень много различий... У меня уже глаза в кучу:(((( В процедуре используется множественная группировка и сортировка на выходе. Вот текст:

----------------------------------------------------------

CREATE PROCEDURE RestsSerg @Date2 datetime, @Sklads varchar(200) AS

select @Sklads = ','+ltrim(rtrim(@Sklads))+','


select t.code tovar,ta.code tara, Coalesce(tf.qtara , 1) qtara ,
sum(case when (s.prim_code=16) or (s.prim_code=17 and (charindex(','+rtrim(ltrim(str(s.skl_code2)))+',', @Sklads )>0) ) then (tf.quantity/(Coalesce(tf.qtara , 1)*case when m.sign =1 then ta.amount else 1 end)) else (-1*(tf.quantity/(Coalesce(tf.qtara , 1)*case when m.sign =1 then ta.amount else 1 end))) end) Mest,
sum(case when (s.prim_code=16) or (s.prim_code=17 and (charindex(','+rtrim(ltrim(str(s.skl_code2)))+',', @Sklads )>0) ) then (case when m.sign =1 then tf.quantity else tf.quantity*ta.amount end) else (-1*(case when m.sign =1 then tf.quantity else tf.quantity*ta.amount end )) end) Ves,
sum(case when (s.prim_code=16) or (s.prim_code=17 and (charindex(','+rtrim(ltrim(str(s.skl_code2)))+',', @Sklads )>0) ) then tf.quantity* tf.buyprice else -1*tf.quantity* tf.buyprice end) summa,
t.name tovarname,ta.name taraname, tf.buyprice, tech.name techname, ts.name vidname, tf.tech_code, tf.vid_code, ta.amount
from shapka_firm s, tovar t,
telo_firmm tf left join tara ta on tf.tara_code = ta.code
left join measure m on tf.measure_code = m.code
left join technologis tech on tf.tech_code = tech.code
left join tovar_subgr ts on tf.vid_code = ts.code
where ((s.constrsign =1 and s.prim_code=1 and s.date_doc >= "03.01.2002" ) or s.prim_code in( 3, 16, 17) )
and s.code = tf.code
and tf.tov_code = t.code
and s.date_doc <= @Date2
and ((charindex(','+rtrim(ltrim(str(s.skl_code)))+',', @Sklads )>0) or (charindex(','+rtrim(ltrim(str(s.skl_code2)))+',', @Sklads )>0) )
and not ((charindex(','+rtrim(ltrim(str(s.skl_code)))+',', @Sklads )>0) and (charindex(','+rtrim(ltrim(str(s.skl_code2)))+',', @Sklads )>0) )
group by t.code, ta.code, Coalesce(tf.qtara , 1), ta.amount, t.name ,ta.name, tf.tech_code, tf.vid_code, tech.name , ts.name, tf.buyprice
having sum(case when (s.prim_code=16) or (s.prim_code=17 and (charindex(','+rtrim(ltrim(str(s.skl_code2)))+',', @Sklads )>0) ) then (tf.quantity/(tf.qtara*case when m.sign =1 then ta.amount else 1 end)) else (-1*(tf.quantity/(tf.qtara*case when m.sign =1 then ta.amount else 1 end))) end)<>0
order by t.name,ta.name

GO
...
Рейтинг: 0 / 0
Странные вещи творятся...
    #32033182
DmitryN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробовал через АДО - результат аналогичен QueryAnalyzer. Неужели это БДЕ-шные глюки??!!
...
Рейтинг: 0 / 0
Странные вещи творятся...
    #32033186
DmitryN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
более того, я вытащил просто запрос как текст, выполнил его в Analyzer и в SQL Explorer - один черт, получаю разные результаты, причем конкретно разные.........
...
Рейтинг: 0 / 0
Странные вещи творятся...
    #32033187
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть одна мысль... Только (прошу прощения за тупость) что есть SQL Explorer и откуда запускается?
...
Рейтинг: 0 / 0
Странные вещи творятся...
    #32033193
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я тоже столкнулся с тем что процедура, выполненая через PHP (там стоит Unix) работает не так. У меня по ходу процедуры во временных таблицах пропадали записи если в каким-нибудь поле саделжался null. Использовались, как очевидно и у Вас, старые библитеки от 6.5, скорее всего в этом и причина. Но мне это как-то непонятно - ладно если б совсем не работало...
...
Рейтинг: 0 / 0
Странные вещи творятся...
    #32033213
Dankov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я думаю, дело в простом. По-разному сравниваюся NULL-значения. В QA и через ADO действует настройка SET ANSI_NULLS ON, а SQL-Explorer, работающий через db-lib, это настройка по-умолчанию в OFF
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Странные вещи творятся...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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