Advantage не имеет функции StrConv
, но есть несколько способов сделать то же самое.
Я использовал переменную сценария в этом сегменте кода для эмуляции поля.Вы можете заменить все экземпляры cityname
именем столбца вашей базы данных (поля).Выберите тот, который вам нравится.system.iota
- это однорядная системная база данных, которую можно использовать в Advantage, если вы не хотите использовать реальную таблицу для тестирования функций.Конечно, вы бы заменили его своим реальным именем таблицы в своем собственном коде.Вы можете запустить каждый из примеров операторов выбора (отдельно) в Утилите базы данных Advantage, чтобы протестировать их;выберите тот, который кажется вам наиболее чистым, поскольку они одинаковы с точки зрения производительности.(ПРИМЕЧАНИЕ: UCase()
и UpperCase()
- это одни и те же внутренние функции; они оба существуют просто потому, что некоторые пользователи ожидают найти UCase()
, а другие UpperCase()
в зависимости от используемого языка программирования. То же самое верно и дляLCase()
и LowerCase()
.)
Я специально использовал смешанную сумку букв верхнего / нижнего регистра в переменной cityname
ниже, чтобы продемонстрировать, что фактический регистр не имеет значения;предоставленные операторы приведут к правильному регистру (первая буква верхняя, остальные нижняя).
declare cityname string;
set cityname = 'cHIcAGo';
-- Method 1
select
UCase(Substring(cityname, 1, 1)) + LCASE(SubString(cityname, 2, Length(cityname))) as city
from system.iota
-- Method 2
select
UpperCase(Left(cityname, 1)) + LowerCase(SubString(cityname, 2, Length(cityname)) as city
from system.iota
-- Method 3
select
UCase(Left(cityname, 1)) + LCase(Right(cityname, Length(city) - 1)) as city
from system.iota