美好的一天, 如何将值设置为Proper / Title大小写? 在SQLite中。
每个例子:
value:
THIS IS A SAMPLE
THIS-IS-A-SAMPLE
this is a sample
期望的输出:
This Is A Sample
This-Is-A-Sample
This Is A Sample
答案 0 :(得分:1)
没有简单的内置机制来执行此操作。
可以编写一个递归common table expression来通过char转换字符串char:
WITH RECURSIVE pcase(id, rest, result) AS (
SELECT ID,
Name,
''
FROM MyTable
UNION ALL
SELECT id,
substr(rest, 2),
result || CASE WHEN substr(result, -1) GLOB '[A-Za-z]'
THEN lower(substr(rest, 1, 1))
ELSE upper(substr(rest, 1, 1))
END
FROM pcase
WHERE rest <> ''
)
SELECT id,
result
FROM pcase
WHERE rest = '';
(不需要ID。)
但是,以您从中访问数据库的任何语言创建用户定义的SQL函数会更好。