Я хотел бы спросить, можно ли написать оператор CASE непосредственно в предложение WHERE (я знаю, что предложение WHERE может быть передано также в виде строки), например,
SELECT * FROM db_table INTO TABLE @mt_table[]
WHERE key1 = @l_key1
AND key2 = @l_key2
AND key3 = @l_key3
AND key4 = @l_key4
AND ( WHEN l_auth = 'A' THEN username = @sy-uname
WHEN l_auth = 'U' THEN username = @sy-uname OR username = @space
END ).