These examples compare CHAR/VARCHAR/CLOB/JSON data types that represent an Avro schema.
/*fail due to name of symbol mismatch*/ SELECT SchemaEqual( '{ "type": "enum", "name": "Suit", "symbols" : ["SPADES", "HEARTS", "DIAMONDS", "CLUBS"] }', '{ "type": "enum", "name": "Suits", "symbols" : ["SPADES", "HEARTS", "DIAMONDS", "CLUBS"] }');
Result:
> 0
/*fail due to structural mismatch*/ SELECT SchemaEqual( '{ "type": "enum", "name": "Suit", "symbols" : ["SPADES", "HEARTS", "DIAMONDS", "CLUBS"] }', '{ "type" : "array", "items" : { "type": "record", "name": "test", "doc": "this is unique01", "fields" : [ {"name": "a", "type": "long"}, {"name": "b", "type": "string"} ] }}');
Result:
> 0
/*success - everything is equal and doc is ignored*/ SELECT SchemaEqual( '{ "type" : "array", "items" : { "type": "record", "name": "test", "doc": "this is unique01", "fields" : [ {"name": "a", "type": "long"}, {"name": "b", "type": "string"} ] }}', '{ "type" : "array", "items" : { "type": "record", "name": "test", "doc": "this is unique02", "fields" : [ {"name": "a", "type": "long"}, {"name": "b", "type": "string"} ] }}');
Result:
> 1