Google bigquery 大查询-水平连接字符串
我有一个数据,其中一列是名字,一列是姓氏。 我尝试通过代码将它们组合成一列:Google bigquery 大查询-水平连接字符串,google-bigquery,string-concatenation,Google Bigquery,String Concatenation,我有一个数据,其中一列是名字,一列是姓氏。 我尝试通过代码将它们组合成一列: SELECT GROUP_CONCAT_UNQUOTED(full_name,' ') from (Select first_name as check from [DATA]), (select last_name as check from [DATA]) 但它返回一个带有 安娜·亚历克斯·艾玛·肖恩。。。。米勒·史密斯·怀特 但我想要的其实是一个像这样的专栏 Anna Miller Alex S
SELECT GROUP_CONCAT_UNQUOTED(full_name,' ')
from (Select first_name as check from [DATA]),
(select last_name as check from [DATA])
但它返回一个带有
安娜·亚历克斯·艾玛·肖恩。。。。米勒·史密斯·怀特
但我想要的其实是一个像这样的专栏
Anna Miller
Alex Smith
Emma White
...
你能告诉我我该怎么做吗?
谢谢 您需要使用和微调功能
SELECT CONCAT(rtrim(ltrim(first_name)),' ',rtrim(ltrim(last_name))) AS full_name
FROM
(SELECT 'Anna' AS first_name,
' Miller ' AS last_name),
您还可以使用双管
|
连接运算符连接字符串():
谢谢,它在大多数情况下都有效,但是如果first_name或last_name的值为null,它将返回null。我尝试使用string(first_name),但它保持为空。我希望它会返回,例如Sean null或Sean NoName。您需要添加
IFNULL(first_name,'null')
,IFNULL(first_name,'NoName')
还可以选择RTRIM(LTRIM(first_name))+''+RTRIM(LTRIM(last_name))工作(+而不是CONCAT)
select
trim(first_name) || ' ' || trim(last_name)
from
...