Re: 7.4: CHAR padding inconsistency
| От | William ZHANG |
|---|---|
| Тема | Re: 7.4: CHAR padding inconsistency |
| Дата | |
| Msg-id | bphjj2$10st$1@news.hub.org обсуждение исходный текст |
| Ответ на | 7.4: CHAR padding inconsistency (Troels Arvin <troels@arvin.dk>) |
| Список | pgsql-bugs |
Bruce said:
> How do other databases handle this?
I have tried on MS SQL Server 2000 and Oracle 9i for Windows.
SQL Server doesn't like character_length and || , so use len and + instead.
Oracle doesn't like character_length either, use length.
Hope the result may help.
create table chartest(col char(10) not null);
insert into chartest values ('AAA');
PostgreSQL:
select character_length(col) from chartest;
10
SQL Server
select len(col) from chartest;
3
Oracle
select length(col) from chartest;
10
PostgreSQL:
select character_length(col || 'hey') from chartest;
6
SQL Server:
select len(col + 'hey') from chartest;
13
Oracle:
select length(col || 'hey') from chartest;
13
PostgreSQL:
select 'aaa ' || 'bb';
aaa bb
SQL Server:
select 'aaa ' + 'bb';
aaa bb
Oracle:
select 'aaa ' || 'bb' from dual;
aaa bb
PostgreSQL:
select cast('aa ' as char(10)) || 'b';
aab
SQL Server:
select cast('aa ' as char(10)) + 'b';
aa b
Oracle:
select cast('aa ' as char(10)) || 'b' from dual;
aa b
В списке pgsql-bugs по дате отправления: