Skip to content

Commit a327b20

Browse files
committed
Apply SQL 9.3 typing rules for CASE-WHEN (#1391)
1 parent 9432f53 commit a327b20

File tree

7 files changed

+1156
-54
lines changed

7 files changed

+1156
-54
lines changed

partiql-cli/src/main/kotlin/org/partiql/cli/Main.kt

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,16 @@
1515

1616
package org.partiql.cli
1717

18-
import AstPrinter
1918
import com.amazon.ion.system.IonSystemBuilder
19+
import com.amazon.ion.system.IonTextWriterBuilder
2020
import org.partiql.cli.pico.PartiQLCommand
2121
import org.partiql.cli.shell.info
2222
import org.partiql.lang.eval.EvaluationSession
2323
import org.partiql.parser.PartiQLParser
24+
import org.partiql.plan.Statement
2425
import org.partiql.plan.debug.PlanPrinter
2526
import org.partiql.planner.PartiQLPlanner
27+
import org.partiql.plugins.local.toIon
2628
import picocli.CommandLine
2729
import java.io.PrintStream
2830
import java.nio.file.Paths
@@ -78,6 +80,16 @@ object Debug {
7880
out.info("-- Plan ----------")
7981
PlanPrinter.append(out, result.statement)
8082

83+
when (val plan = result.statement) {
84+
is Statement.Query -> {
85+
out.info("-- Schema ----------")
86+
val outputSchema = java.lang.StringBuilder()
87+
val ionWriter = IonTextWriterBuilder.minimal().withPrettyPrinting().build(outputSchema)
88+
plan.root.type.toIon().writeTo(ionWriter)
89+
out.info(outputSchema.toString())
90+
}
91+
}
92+
8193
return "OK"
8294
}
8395
}

0 commit comments

Comments
 (0)