Saving all output to "!!{outputDirectory}!!/udf_equal.q.raw". Enter "record" with no arguments to stop it. >>> !run !!{qFileDirectory}!!/udf_equal.q >>> DESCRIBE FUNCTION =; 'tab_name' 'a = b - Returns TRUE if a equals b and false otherwise' 1 row selected >>> DESCRIBE FUNCTION EXTENDED =; 'tab_name' 'a = b - Returns TRUE if a equals b and false otherwise' 'Synonyms: ==' 2 rows selected >>> >>> DESCRIBE FUNCTION ==; 'tab_name' 'a == b - Returns TRUE if a equals b and false otherwise' 1 row selected >>> DESCRIBE FUNCTION EXTENDED ==; 'tab_name' 'a == b - Returns TRUE if a equals b and false otherwise' 'Synonyms: =' 2 rows selected >>> >>> SELECT true=false, false=true, false=false, true=true, NULL=NULL, true=NULL, NULL=true, false=NULL, NULL=false FROM src LIMIT 1; '_c0','_c1','_c2','_c3','_c4','_c5','_c6','_c7','_c8' 'false','false','true','true','','','','','' 1 row selected >>> >>> DESCRIBE FUNCTION <=>; 'tab_name' 'a <=> b - Returns same result with EQUAL(=) operator for non-null operands, but returns TRUE if both are NULL, FALSE if one of the them is NULL' 1 row selected >>> DESCRIBE FUNCTION EXTENDED <=>; 'tab_name' 'a <=> b - Returns same result with EQUAL(=) operator for non-null operands, but returns TRUE if both are NULL, FALSE if one of the them is NULL' 1 row selected >>> >>> SELECT true<=>false, false<=>true, false<=>false, true<=>true, NULL<=>NULL, true<=>NULL, NULL<=>true, false<=>NULL, NULL<=>false FROM src LIMIT 1; '_c0','_c1','_c2','_c3','_c4','_c5','_c6','_c7','_c8' 'false','false','true','true','true','false','false','false','false' 1 row selected >>> !record