如何在ClickHouse中编写表表达式?含MS SQL示例转写需求
在ClickHouse中编写表表达式及MS SQL查询转换
基础表表达式写法
ClickHouse支持通过VALUES子句直接构造临时表作为表表达式,语法和MS SQL高度兼容——核心是用(VALUES (值1, 值2), ...)生成临时数据集,再通过AS指定表别名和列名。
MS SQL查询转换
原MS SQL查询:
SELECT a, b FROM (VALUES (1, 2), (3, 4), (5, 6)) AS MyTable(a, b)
转换为ClickHouse兼容的写法,直接复用类似语法即可:
SELECT a, b FROM (VALUES (1, 2), (3, 4), (5, 6)) AS MyTable(a, b)
类型显式声明(可选)
如果需要明确指定列的数据类型,避免自动推断偏差,可以在VALUES中通过类型转换函数指定:
SELECT a, b FROM (VALUES (toInt64(1), toInt64(2)), (toInt64(3), toInt64(4)), (toInt64(5), toInt64(6))) AS MyTable(a, b)
内容的提问来源于stack exchange,提问作者doktr
相关产品推荐
相关产品推荐

