103 lines
11 KiB
Plaintext
103 lines
11 KiB
Plaintext
See `ob_expr_operator.h' for the interface of this module.
|
|
|
|
collation etc. support status of each system function:
|
|
<Length> <Null> <ResultType> <PrecisionScale> <Collation> <Decimals> <FunctionName>
|
|
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_abs.h
|
|
<LengthChecked> <NullChecked> <ResultTypeTemp> <PrecisionScale> <CollationNone> <Decimals> ob_expr_add.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_and.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_arg_case.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_between.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_case.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_cast.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_coalesce.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_collation.h - 这里面有好几个函数
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_concat.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_concat_ws.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_conv.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_current_user.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_cur_time.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_database.h
|
|
<LengthChecked> <NullChecked> <ResultType> <PrecisionScale> <CollationNone> <Decimals> ob_expr_date_add.h - 超级恶心,select DATE_SUB(DateType, interval 1 year) from matrix; select DATE_SUB(DateType, interval 1 hour) from matrix;返回的类型是不同的, 前Date,后Datetime
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_date_format.h
|
|
<LengthChecked> <NullChecked> <ResultType> <PrecisionScale> <CollationNode> <Decimals> ob_expr_date_sub.h - 同date_add,目前实现为返回timestamp类型。
|
|
<Length> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_div.h
|
|
<LengthChecked> <NullChecked> <ResultTypeObOnly> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_effective_tenant.h
|
|
<LengthChecked> <NullChecked> <ResultTypeObOnly> <PrecisionScale> <CollationNone> <Decimals> ob_expr_effective_tenant_id.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_equal.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_exists.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_extract.h
|
|
<LengthChecked> <NullChecked> <ResultTypeObOnly> <PrecisionScale> <CollationNone> <Decimals> ob_expr_func_addr_to_part_id.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_func_ceil.h - impl inefficient, by peiwei
|
|
<LengthObOnly> <NullChecked> <ResultTypeOracleOnly> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_func_dump.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_func_floor.h - impl inefficient, by peiwei
|
|
<LengthChecked> <NullChecked> <ResultTypeObOnly> <PrecisionScale> <CollationNone> <Decimals> ob_expr_func_part_hash.h
|
|
<LengthChecked> <NullChecked> <ResultTypeObOnly> <PrecisionScale> <CollationNone> <Decimals> ob_expr_func_partition_key.h
|
|
<Length> <NullChecked> <ResultType> <PrecisionScale> <CollationNone> <Decimals> ob_expr_func_round.h - result type should vary, by yubai
|
|
<LengthNoNeed> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_fun_values.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_greater_equal.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_greater_than.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_greatest.h
|
|
<Length> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_hex.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_in.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_instr.h
|
|
<LengthChecked> <NullChecked> <ResultTypeObOnly> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_int2ip.h
|
|
<Length> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_int_div.h
|
|
<LengthChecked> <NullChecked> <ResultTypeObOnly> <PrecisionScale> <CollationNone> <Decimals> ob_expr_ip2int.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_is.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_is_not.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_last_insert_id.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_least.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_length.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_less_equal.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_less_than.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_like.h
|
|
<Length> <NullObOnly> <ResultTypeObOnly> <PrecisionScale> <CollationNone> <Decimals> ob_expr_lnnvl.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_locate.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_lower.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_md5.h
|
|
<Length> <NullObOnly> <ResultType> <PrecisionScale> <CollationNone> <Decimals> ob_expr_merging_frozen_time.h -- discarded function
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_minus.h
|
|
<Length> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_mod.h
|
|
<Length> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_mul.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_neg.h
|
|
<LengthObOnly> <NullChecked> <ResultTypeObOnly> <PrecisionScale> <CollationNone> <Decimals> ob_expr_autoinc_nextval.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_not_between.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_not_equal.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_not_exists.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_not.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_not_in.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <Collation> <Decimals> ob_expr_null_safe_equal.h
|
|
<LengthChecked> <NullChecked> <ResultTypeObOnly> <PrecisionScale> <Collation> <Decimals> ob_expr_nvl.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_or.h
|
|
<Length> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_pow.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_quote.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_regexp.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_repeat.h
|
|
<LengthMore> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_replace.h
|
|
<LengthChecked> <NullChecked> <ResultType> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_reverse.h
|
|
<LengthChecked> <NullChecked> <ResultType> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_right.h
|
|
<LengthMore> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_rpad.h - LengthMore这种跟数值有关
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_sign.h
|
|
<Length> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_str_to_date.h - ResultType非常复杂,跟输入值相关, 例如SELECT STR_TO_DATE('abc','%s');SELECT STR_TO_DATE('abc','a');目前实现简单一些,统一返回timestamp
|
|
<LengthChecked> <Null> <ResultTypeNone> <PrecisionScale> <Collation> <Decimals> ob_expr_subquery_equal.h
|
|
<LengthChecked> <Null> <ResultTypeNone> <PrecisionScale> <Collation> <Decimals> ob_expr_subquery_greater_equal.h
|
|
<LengthChecked> <Null> <ResultTypeNone> <PrecisionScale> <Collation> <Decimals> ob_expr_subquery_greater_than.h
|
|
<LengthChecked> <Null> <ResultTypeNone> <PrecisionScale> <Collation> <Decimals> ob_expr_subquery_less_equal.h
|
|
<LengthChecked> <Null> <ResultTypeNone> <PrecisionScale> <Collation> <Decimals> ob_expr_subquery_less_than.h
|
|
<LengthChecked> <Null> <ResultTypeNone> <PrecisionScale> <Collation> <Decimals> ob_expr_subquery_not_equal.h
|
|
<LengthChecked> <Null> <ResultTypeNone> <PrecisionScale> <Collation> <Decimals> ob_expr_subquery_ns_equal.h
|
|
<LengthChecked> <Null> <ResultTypeNone> <PrecisionScale> <Collation> <Decimals> ob_expr_subquery_ref.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_substr.h
|
|
<LengthMore> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_insert.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_substring_index.h
|
|
<LengthChecked> <NullObOnly> <ResultTypeObOnly> <PrecisionScale> <CollationNone> <Decimals> ob_expr_sys_view_bigint_param.h
|
|
<LengthChecked> <NullObOnly> <ResultTypeObOnly> <PrecisionScale> <CollationNone> <Decimals> ob_expr_time_to_usec.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_trim.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_unhex.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_upper.h
|
|
<LengthChecked> <NullObOnly> <ResultTypeObOnly> <PrecisionScale> <CollationNone> <Decimals> ob_expr_usec_to_time.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_user.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationChecked> <Decimals> ob_expr_version.h
|
|
<LengthChecked> <NullChecked> <ResultTypeChecked> <PrecisionScale> <CollationNone> <Decimals> ob_expr_xor.h - (1^-1 out of range bug @jiuren)
|