Concat
concat
连接两个或多个列或值的数据,并返回一个字符串。
语法
concat(value1, value2, ...)
value1
、value2
... 可以是列或值。Metabase 会在连接非字符串列的值之前将其转换为字符串。
示例
表达式 | 结果 |
---|---|
concat("Vienna", "Austria") |
"ViennaAustria" |
concat("Vienna", " is in " ,"Austria") |
"Vienna is in Austria" |
concat([City], " is in " ,[Country]) |
"Vienna is in Austria" |
Metabase 将对非字符串列使用未格式化的值
当您在 concat
中使用非字符串列时,Metabase 在将列转换为字符串时将忽略您应用于列的任何格式。
例如,如果您将数字格式化为在表格结果中仅显示小数点后两位,则 concat
的结果仍将包含原始结果中找到的额外小数位数(如果有)。
格式化显示 | 值 | concat("Result:", " ", [Value]) |
---|---|---|
Kitten |
Kitten |
Result: Kitten |
17 |
17 |
Result: 17 |
31.25 |
31.24823945 |
Result: 31.24823945 |
42% |
0.42 |
Result: 0.42 |
January 1, 2024 |
2025-02-11 21:40:27.892 |
Result: 31.24823945 |
接受的数据类型
数据类型 | 与 concat 兼容 |
---|---|
字符串 | ✅ |
数字 | ✅ |
时间戳 | ✅ |
布尔值 | ✅ |
JSON | ✅ |
非字符串类型将转换为字符串。无论传递给 concat
的值类型如何,结果都将是字符串。
相关函数
本节介绍了与 Metabase concat
表达式工作方式相同的函数和公式,并附有关于如何为您的用例选择最佳选项的说明。
SQL
在大多数情况下(除非您使用 NoSQL 数据库),从 笔记本编辑器 创建的提问会转换为 SQL 查询,并在您的数据库或数据仓库上运行。
如果我们的示例数据存储在关系数据库中
SELECT
CONCAT(City, ", ", Country) AS "Location"
FROM
richard_linklater_films;
等同于 Metabase concat
表达式
concat([City], ", ", [Country])
电子表格
如果我们的示例数据在电子表格中,“城市”在 A 列,“国家”在 B 列,我们可以创建第三列“位置”,如下所示:
=CONCATENATE(A2, ", ", B2)
等同于 Metabase concat
表达式
concat([City], ", ", [Country])
Python
假设示例数据在一个名为 df
的数据帧列中
df["Location"] = df["City"] + ", " + df["Country"]
与 Metabase concat
表达式相同
concat([City], ", ", [Country])
拓展阅读
阅读其他 Metabase 版本的文档。