Вы хотите сделать что-то условно в MS Access. Обычно это означает IIF()
или SWITCH()
, поскольку MS Access не поддерживает стандартный синтаксис выражения CASE
:
select t.column,
iif(len(column) = 4, left(column, 2), column) as columnA,
iif(len(column) = 4, right(column, 2), NULL) as columnB
from t;
Хотя я и не рекомендую, вы также можете использовать union all
:
select t.column, t.column as columnA, NULL as columnB
from t
where len(column) <> 4
union all
select t.column, left(t.column, 2) as columnA, right(t.column, 2) as columnB
from t
where len(column) = 4;