我有一组表格如下
customer(cus_id,cus_first_name,cus_last_name);
insert into customer values ('c001', 'tan', 'wah khang');
我想创建一个select语句来显示姓氏连接的名字。 示例:
tan wah khang
可能吗?
答案 0 :(得分:4)
您可以使用(这不称为“加入”,但连接 * || (double pipe)
*运算符:
SELECT (cus_first_name || ' ' || cus_last_name) AS full_name
FROM customer
答案 1 :(得分:2)
||
与MySQL的CONCAT_WS
不完全相同。如果其中一个操作数为CONCAT_WS
,则NULL
会删除分隔符。因此,如果firstname是NULL
而lastname是'Smith',那么在MySQL中:
CONCAT_WS(' ', firstname, lastname) returns "Smith"
然而,在Oracle中:
firstname || ' ' || lastname returns " Smith" (prepended with a space)
我很想知道是否存在真正的等价物,或者您是否必须编写存储过程来模拟CONCAT_WS
。这非常有用。
答案 2 :(得分:1)
select cus_first_name || ' ' || cus_last_name from customer
答案 3 :(得分:0)
是:
select cus_first || ' ' || cus_last from your_table;
答案 4 :(得分:0)
在Oracle,PostgreSQL,DB2,Informix中:
select cus_first_name || ' ' || cus_last_name from customer
在SQL-Server中:
select cus_first_name + ' ' + cus_last_name from customer
在MS-Access中:
select cus_first_name & ' ' & cus_last_name from customer
在MySQL中:
select concat(cus_first_name , ' ', cus_last_name) from customer
在Informix中:
select concatenate(cus_first_name,concatenate(' ',cus_last_name)) from customer