Мне нужно основать результат из моего кода на дату. Я хочу использовать временную таблицу и оператор case, но это, похоже, не работает. Я использую SQL 2012 благодаряcase case с использованием таблицы temp
if object_id('tempdb..#abc') is not null drop table #abc
create table #abc (abc varchar(25)
, codetype varchar (25)
)
Insert into #abc select 253.2, 'abc9'
Insert into #abc select 428.41, 'abc10'
select pat.id
, edg.CODE
, case when DATE > '9/1/2014' then abc.codetype = 'abc9' else abc.codetype = 'abc10' end
from pat
left join dx on pat.csn = dx.csn
left join edg on dx.dx = edg.dx
inner join #code9 as abc on abc.abc = edg.CODE
where
pat.DATE between '9/2/2014' and '9/2/2014'
', что, кажется, не будет working' - что значит«не работает»значит ... он выдает ошибку, ничего не делает , вспыхивает в пламя, что? – LittleBobbyTables
ваш выбор не использует соблазнительный #abc вообще – radar
Вы фильтруете строки, где 'DATE' всегда 9/2/2014, но ваш оператор case проверяет, есть ли дата> 9/1/2014 или нет. Разве не 9/2/2014 ** всегда ** больше, чем 9/1/2014? – Brandon