Otherwise, all input expressions must have the same implicit collation derivation or the default collation. If any non-default collation is present, that is the result of the collation combination. Otherwise, the result is the default collation.I think the above quote part can be used to explain the following examples.CREATE TABLE test1 ( a text COLLATE "de_DE", b text COLLATE "es_ES", c text );
SELECT a < 'foo' FROM test1;SELECT c < 'foo' FROM test1;But the non-default seems not that correct for me. Like a column if it does not mention anything, then the default value is null. So
create table test111( a text) The default collation for column a is the same as the output of show lc_collate.so there is no non-default?
On Tue, May 24, 2022 at 10:43 AM David G. Johnston <david.g.johnston@xxxxxxxxx> wrote:
On Monday, May 23, 2022, jian he <jian.universality@xxxxxxxxx> wrote:CREATE DOMAIN testdomain AS text;
--asume the default collation is as per show LC_COLLATE;
– on my pc, it is C.UTF-8.
--So the testdomain will be collation "C.UTF-8"
------------=> \d collate_test1
Table "test.collate_test1"
Column | Type | Collation | Nullable | Default
--------+---------+-----------+----------+---------
a | integer | | |
b | text | en-x-icu | not null |
-----------------------------------------------
My guess is that the following should be the same.
My reading of the docs say this is consistent with outcome #2.David J.
--
I recommend David Deutsch's <<The Beginning of Infinity>>
Jian