Re: Problem cocatenating String (||)
От | Tom Lane |
---|---|
Тема | Re: Problem cocatenating String (||) |
Дата | |
Msg-id | 2750.1095139953@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Problem cocatenating String (||) ("Thomas Niemeier" <thomas.niemeier@case-bielefeld.de>) |
Список | pgsql-bugs |
"Thomas Niemeier" <thomas.niemeier@case-bielefeld.de> writes: > I've got a problem concatenating two fields (char(10) not null) in a select statement. Let's say the first field pnamehas the value > 'USER ' and the second field pfirst the value 'JOE '. Then a "select pname||pfirst from table" would return thevalue 'USERJOE', trimming all spaces in the fields. This behaviour seems to be new in Release 7.4.5. Release 7.3.2 returns'USER JOE', which makes more sense to me. The general feeling around here is that if you consider trailing spaces to be significant, you ought to be storing your data as varchar not char. The SQL spec is perfectly clear that trailing spaces in char(n) are not significant for comparison purposes. It's a bit vague about how to handle them otherwise, but we've found that supposing them to be significant for some operations but not others leads to all sorts of inconsistencies. regards, tom lane
В списке pgsql-bugs по дате отправления: