github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/pkg/sql/logictest/testdata/logic_test/uuid (about) 1 statement ok 2 CREATE TABLE u (token uuid PRIMARY KEY, 3 token2 uuid, 4 token3 uuid, 5 UNIQUE INDEX i_token2 (token2)) 6 7 statement ok 8 INSERT INTO u VALUES 9 ('63616665-6630-3064-6465-616462656562', '{63616665-6630-3064-6465-616462656563}', b'kafef00ddeadbeed'), 10 ('urn:uuid:63616665-6630-3064-6465-616462656564', '63616665-6630-3064-6465-616462656565'::uuid, b'kafef00ddeadbeee'), 11 (b'cafef00ddeadbeef', '63616665-6630-3064-6465-616462656567', b'kafef00ddeadbeef') 12 13 query TTT 14 SELECT * FROM u ORDER BY token 15 ---- 16 63616665-6630-3064-6465-616462656562 63616665-6630-3064-6465-616462656563 6b616665-6630-3064-6465-616462656564 17 63616665-6630-3064-6465-616462656564 63616665-6630-3064-6465-616462656565 6b616665-6630-3064-6465-616462656565 18 63616665-6630-3064-6465-616462656566 63616665-6630-3064-6465-616462656567 6b616665-6630-3064-6465-616462656566 19 20 query TTT 21 SELECT * FROM u WHERE token < '63616665-6630-3064-6465-616462656564'::uuid 22 ---- 23 63616665-6630-3064-6465-616462656562 63616665-6630-3064-6465-616462656563 6b616665-6630-3064-6465-616462656564 24 25 query TTT 26 SELECT * FROM u WHERE token <= '63616665-6630-3064-6465-616462656564'::uuid ORDER BY token 27 ---- 28 63616665-6630-3064-6465-616462656562 63616665-6630-3064-6465-616462656563 6b616665-6630-3064-6465-616462656564 29 63616665-6630-3064-6465-616462656564 63616665-6630-3064-6465-616462656565 6b616665-6630-3064-6465-616462656565 30 31 statement error duplicate key value 32 INSERT INTO u VALUES ('63616665-6630-3064-6465-616462656566') 33 34 statement error duplicate key value 35 INSERT INTO u VALUES ('63616665-6630-3064-6465-616462656569', '63616665-6630-3064-6465-616462656565') 36 37 statement error UUID must be exactly 16 bytes long, got 15 bytes 38 INSERT INTO u VALUES (b'cafef00ddeadbee') 39 40 statement error UUID must be exactly 16 bytes long, got 17 bytes 41 INSERT INTO u VALUES (b'cafef00ddeadbeefs') 42 43 statement error uuid: incorrect UUID length 44 INSERT INTO u VALUES ('63616665-6630-3064-6465-61646265656') 45 46 statement error uuid: incorrect UUID length 47 INSERT INTO u VALUES ('63616665-6630-3064-6465-6164626565620') 48 49 statement error unsupported comparison operator: <uuid> = <bytes> 50 SELECT token FROM u WHERE token=b'cafef00ddeadbeef'::bytes 51 52 statement error unsupported comparison operator: <uuid> = <string> 53 SELECT token FROM u WHERE token='63616665-6630-3064-6465-616462656562'::string 54 55 statement ok 56 SELECT token FROM u WHERE token='63616665-6630-3064-6465-616462656562'::uuid 57 58 query T 59 SELECT token FROM u WHERE token='urn:uuid:63616665-6630-3064-6465-616462656562' 60 ---- 61 63616665-6630-3064-6465-616462656562 62 63 query T 64 SELECT token FROM u WHERE token=b'cafef00ddeadbeef' 65 ---- 66 63616665-6630-3064-6465-616462656566 67 68 query T 69 SELECT token2 FROM u WHERE token2='63616665-6630-3064-6465-616462656563' 70 ---- 71 63616665-6630-3064-6465-616462656563 72 73 query T 74 SELECT token FROM u WHERE token IN ('63616665-6630-3064-6465-616462656562', '63616665-6630-3064-6465-616462656564') ORDER BY token 75 ---- 76 63616665-6630-3064-6465-616462656562 77 63616665-6630-3064-6465-616462656564 78 79 statement ok 80 INSERT INTO u VALUES ('63616665-6630-3064-6465-616462656567'::uuid) 81 82 statement ok 83 INSERT INTO u VALUES ('urn:uuid:63616665-6630-3064-6465-616462656568'::uuid) 84 85 statement ok 86 INSERT INTO u VALUES (uuid_v4()::uuid) 87 88 statement error value type bytes doesn't match type uuid 89 INSERT INTO u VALUES ('cafef00ddeadbeef'::bytes) 90 91 statement error value type string doesn't match type uuid 92 INSERT INTO u VALUES ('63616665-6630-3064-6465-616462656562'::string) 93 94 statement error value type bytes doesn't match type uuid 95 INSERT INTO u VALUES (uuid_v4()) 96 97 query T 98 SELECT token::uuid FROM u WHERE token=b'cafef00ddeadbeef' 99 ---- 100 63616665-6630-3064-6465-616462656566 101 102 query T 103 SELECT token::string FROM u WHERE token=b'cafef00ddeadbeef' 104 ---- 105 63616665-6630-3064-6465-616462656566 106 107 query T 108 SELECT token::bytes FROM u WHERE token=b'cafef00ddeadbeef' 109 ---- 110 cafef00ddeadbeef 111 112 statement error invalid cast: uuid -> int 113 SELECT token::int FROM u 114 115 query T 116 SELECT ('63616665-6630-3064-6465-616462656562' COLLATE en)::uuid 117 ---- 118 63616665-6630-3064-6465-616462656562