连接

concat 将两个或多个列或值中的数据连接起来,并返回一个字符串。

语法

concat(value1, value2, ...)

value1value2 等可以是列或值。Metabase在连接值之前,将非字符串列转换为字符串。

示例

表达式 结果
concat("维也纳", "奥地利") "维也纳奥地利"
concat("维也纳", " is in " ,"奥地利") "维也纳 is in 奥地利"
concat([城市], " is in " ,[国家]) "维也纳 is in 奥地利"

Metabase将使用非格式化的值用于非字符串列

当你在concat中使用非字符串列时,Metabase将忽略你在将列转换为字符串时应用的任何格式化

例如,如果你将数字格式化为仅显示表格结果中的前两位小数,则concat的结果仍包括原始结果中找到的任何额外的十进制数字(如果有的话)。

格式化显示 concat("结果:", " ", [值])
小猫 小猫 结果:小猫
17 17 结果:17
31.25 31.24823945 结果:31.24823945
42% 0.42 结果:0.42
2024年1月1日 2025-02-11 21:40:27.892 结果: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版本的文档。

想改进这些文档? 提出更改。