Bukan bug sama sekali.
Melempar string literal 'ab '
ke character
, inilah yang Anda dapatkan:
a
Per dokumentasi:
character
tanpa penentu panjang sama dengancharacter(1)
.
'a'::character(1)
kemudian akan dipaksa untuk varchar
(character varying
) untuk menguji kesetaraan dengan 'a'::varchar
atau 'ab'::varchar
dan hasilkan TRUE
atau FALSE
masing-masing.
Pada dasarnya, hampir tidak ada alasan bagus untuk menggunakan character
sama sekali . Ini adalah jenis warisan yang telah hidup lebih lama dari kegunaannya. Cukup gunakan text
atau varchar
.
- Apakah ada kerugian menggunakan tipe data "teks" untuk menyimpan string?