Kev*_*ash 2 sql string merge concatenation amazon-redshift
我有两列具有客户名称和产品名称.我想将这两列合并在它们之间的' - '.
任何人都可以建议如何做到这一点.我正在使用Redshift.我尝试了concat,string_agg但我试图看看是否有一种替代方式没有group by.
customer_name, product_name, expected_output
Kev, Prod_A, Kev - Prod_A
Run Code Online (Sandbox Code Playgroud)
您可以使用||@Mureinik 提到的连接运算符。但是,我们也可以在CONCAT这里使用该函数:
SELECT
customer_name,
product_name,
CONCAT(CONCAT(customer_name, ' - '), product_name) AS output
FROM yourTable;
Run Code Online (Sandbox Code Playgroud)
我对为什么CONCAT不适合你的猜测是你试图向它传递 2 个以上的参数。 CONCAT在 Redshift 中只需要两个参数,因此我们必须将它们链接到此处才能使其工作。
您可以使用||运算符来连接字符串:
SELECT customer_name, product_name, customer_name || ' - ' || product_name AS output
FROM mytable
Run Code Online (Sandbox Code Playgroud)