Поддерживает ли sqlite какой-либо оператор IF(condition) в select


поддерживает ли sqlite функцию sql " if " в инструкции select?

select if( length( a ) > 4 , a , ' ') as b
from foo

который вернет a, если длина была более 4 символов длиной. или же он вернется '' как b

если он поддерживает условие в select, какой синтаксис должен использоваться?

Я проверил http://sqlite.org/lang_corefunc.html но я этого не вижу.

2 67

2 ответа:

посмотреть случае выражение.

выражение CASE выполняет роль, аналогичную IF-THEN-ELSE в других языках программирования.

пример

select case when length(a) > 4 then a else '' end as b
from foo

можно использовать случае для этого:

select case when length(a)>4 then a else ' ' end from foo;