提交 928b1350 authored 作者: Evgenij Ryazanov's avatar Evgenij Ryazanov

Fix FF1-FF9 patterns in TO_CHAR

上级 cffbcfc8
......@@ -743,9 +743,9 @@ public class ToChar {
} else if ((cap = containsAt(format, i, "FF1", "FF2",
"FF3", "FF4", "FF5", "FF6", "FF7", "FF8", "FF9")) != null) {
int x = Integer.parseInt(format.substring(i + 2, i + 3));
int x = format.charAt(i + 2) - '0';
int ff = (int) (nanos * Math.pow(10, x - 9));
output.append(ff);
StringUtils.appendZeroPadded(output, x, ff);
i += 3;
} else if ((cap = containsAt(format, i, "FF")) != null) {
StringUtils.appendZeroPadded(output, 9, nanos);
......
......@@ -1556,6 +1556,8 @@ public class TestFunctions extends TestBase implements AggregateFunction {
"SELECT TO_CHAR(X, 'HH:MI:SS.FF9') FROM T");
assertResult("012345678", stat,
"SELECT TO_CHAR(TIME '0:00:00.012345678', 'FF') FROM T");
assertResult("00", stat,
"SELECT TO_CHAR(TIME '0:00:00.000', 'FF2') FROM T");
assertResult("08:12", stat, "SELECT TO_CHAR(X, 'HH:MI') FROM T");
assertResult("08:12", stat, "SELECT TO_CHAR(X, 'HH12:MI') FROM T");
assertResult("08:12", stat, "SELECT TO_CHAR(X, 'HH24:MI') FROM T");
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论