case в select case в mysql

Мне надоело подключаться к MSSQL, поэтому я переключаюсь на mysql . Это медленный прогресс. Вот мой нынешний пень: mssql:

create function W(m varchar(255)) returns int begin

declare @e int
set @e = (select COUNT(N) from P where N = m)

declare @t int
set @t = dbo.C(m)

return case @t 
when 0 then -1 
when 1 then
    case @e when 0 then -1 else 1 end
when 2 then
    case @e when 1 then -1 when 2 then 0 when 3 then 0 when 4 then 1 end
when 3 then 
    case @e when 1 then -1 when 2 then 1 end
when 4 then 
    case @e when 1 then -1 when 2 then 0 when 3 then 1 end
end
end

Я бы хотел переключить это на mysql. Есть ли действующий способ mysql:

select select case n when 0 then 1 when 1 then 2 end into var

? Как насчет

set var = select case n when [...] end

?

11
задан Ed I 16 September 2014 в 20:10
поделиться