2017-04-05 44 views
0
SELECT CONCAT(rtrim(Xyz.FirstName), rtrim(Xyz.LastName)) as person from Xyz 
WHERE Person = ('JohnSmith') 

以上的作品,但我的输入参数条款会对 例如“约翰·史密斯”中有空格。我尝试添加的毗连两列凡在PSQL V11

WHERE Person = ltrim('John Smith') 

但也不能工作。

+0

你不需要选择部分名称中的空格吗? – GurV

+0

您的预期产出是多少? –

+0

@a_horse_with_no_name我正在使用Pervasive PSQL v11。不知道确切的数据库引擎 – user7822440

回答

0

查询:

SELECT CONCAT(rtrim(Xyz.FirstName), rtrim(Xyz.LastName)) as person from Xyz 
WHERE Person = ('Jon Smith') 

不会返回,因为空间的任何记录,你是rtrim荷兰国际集团的字段。
您可以使用类似:

SELECT CONCAT(rtrim(Xyz.FirstName), concat(' ', rtrim(Xyz.LastName))) as person from Xyz 
WHERE Person = ('Jon Smith') 

注意额外的concat和空间(”“)在Select部分。

-1

就像这样:

select * from person where trim(last_name)||trim(first_name)= replace('John Smith', ' ', '') 
+0

Pervasive SQL不支持||运营商。上面的语句会产生语法错误。 – mirtheil