mirror of
https://github.com/chaisql/chai.git
synced 2025-09-26 19:51:21 +08:00
129 lines
1.6 KiB
SQL
129 lines
1.6 KiB
SQL
-- test: source(INT)
|
|
> CAST (1 AS INTEGER)
|
|
1
|
|
|
|
> CAST (1 AS BOOL)
|
|
true
|
|
|
|
> CAST (1 AS DOUBLE PRECISION)
|
|
1.0
|
|
|
|
> CAST (1 AS TEXT)
|
|
'1'
|
|
|
|
! CAST (1 AS BYTEA)
|
|
'cannot cast "integer" as "bytea"'
|
|
|
|
-- test: source(DOUBLE PRECISION)
|
|
> CAST (1.1 AS DOUBLE PRECISION)
|
|
1.1
|
|
|
|
> CAST (1.1 AS INTEGER)
|
|
1
|
|
|
|
! CAST (1.1 AS BOOL)
|
|
'cannot cast "double precision" as "boolean"'
|
|
|
|
> CAST (1.1 AS TEXT)
|
|
'1.1'
|
|
|
|
! CAST (1.1 AS BYTEA)
|
|
'cannot cast "double precision" as "bytea"'
|
|
|
|
-- test: source(BOOL)
|
|
> CAST (true AS BOOL)
|
|
true
|
|
|
|
> CAST (true AS INTEGER)
|
|
1
|
|
|
|
> CAST (false AS INTEGER)
|
|
0
|
|
|
|
! CAST (true AS DOUBLE PRECISION)
|
|
'cannot cast "boolean" as "double precision"'
|
|
|
|
> CAST (true AS TEXT)
|
|
'true'
|
|
|
|
! CAST (true AS BYTEA)
|
|
'cannot cast "boolean" as "bytea"'
|
|
|
|
-- test: source(TEXT)
|
|
> CAST ('a' AS TEXT)
|
|
'a'
|
|
|
|
> CAST ('100' AS INTEGER)
|
|
100
|
|
|
|
> CAST ('100.5' AS INTEGER)
|
|
100
|
|
|
|
! CAST ('a' AS INTEGER)
|
|
|
|
> CAST ('3.14' AS DOUBLE PRECISION)
|
|
3.14
|
|
|
|
> CAST ('3' AS DOUBLE PRECISION)
|
|
3.0
|
|
|
|
! CAST ('10.5wdwd' AS DOUBLE PRECISION)
|
|
|
|
> CAST ('true' AS BOOL)
|
|
true
|
|
|
|
> CAST ('false' AS BOOL)
|
|
false
|
|
|
|
> CAST ('falSe' AS BOOL)
|
|
false
|
|
|
|
> CAST ('0' AS BOOL)
|
|
false
|
|
|
|
> CAST ('1' AS BOOL)
|
|
true
|
|
|
|
> CAST ('t' AS BOOL)
|
|
true
|
|
|
|
> CAST ('f' AS BOOL)
|
|
false
|
|
|
|
> CAST ('TrUe' AS BOOL)
|
|
true
|
|
|
|
> CAST ('yes' AS BOOL)
|
|
true
|
|
|
|
> CAST ('y' AS BOOL)
|
|
true
|
|
|
|
> CAST ('no' AS BOOL)
|
|
false
|
|
|
|
> CAST ('n' AS BOOL)
|
|
false
|
|
|
|
> CAST ('on' AS BOOL)
|
|
true
|
|
|
|
> CAST ('off' AS BOOL)
|
|
false
|
|
|
|
> CAST ('YXNkaW5l' AS BYTEA)
|
|
'\x617364696e65'
|
|
|
|
-- test: source(BYTEA)
|
|
> CAST ('\xAF' AS BYTEA)
|
|
'\xAF'
|
|
|
|
! CAST ('\xAF' AS INT)
|
|
'cannot cast "bytea" as "integer"'
|
|
|
|
! CAST ('\xAF' AS DOUBLE PRECISION)
|
|
'cannot cast "bytea" as "double precision"'
|
|
|
|
> CAST ('\x617364696e65' AS TEXT)
|
|
'YXNkaW5l'
|