写这段代码的背景:

1:老项目,因为一些原因没有使用一些流行的DAG调度平台,而是通过使用Linux定时任务调度SHELL的方式来执行每日的批处理调度

2:整个的批处理调度一共有三个入口SHELL,也就是直接和Linux 定时任务交互的SHELL,big_main.sh,run_main.sh,run_ten.sh。而这三个脚本也是我的递归方法的出口

3:一共有两个目录,一个目录专门放所有的shell脚本,一个目录专门放所有的SQL脚本

4:SHELL和SHELL之间互相调用,没有清晰的分层,多少层都有可能。但是最终一定是以调用具体SQL 脚本作为结束

下面是我的脚本代码

#!/bin/bash#目前所有的开发默认的是脚本放在 /home/jtaom/test/script/ 目录中,
#如果向做自己的定制,直接把目录替换下就好shell_path='/data/dcos/big/shell'
sql_path='/data/dcos/big/sql'
table_shell_call_log="/home/jtaom/test/script/table_shell_call.log"
table_have_caller="/home/jtaom/test/script/table_have_caller.log"
debug_log="/home/jtaom/test/script/debug.log"echo > ${debug_log}function extract_all_caller()
{local folder=$1local key=$2local flag=$3#进入对应目录cd $folderif [ $? -ne 0 ]then  echo "can not access sql_path"exit 1fi#切换for循环的分割符local OLDIFS=$IFSlocal IFS=$'\n'#对表名进行精确匹配,防止相似标名匹配local related_script=""local lines=`grep -rinw ${key}`echo "-----------------------------------------" >> ${debug_log} 2>&1echo "!!! extract_all_caller current grepd lines:[${lines}]" >> ${debug_log} 2>&1echo "-----------------------------------------" >> ${debug_log} 2>&1 for line in ${lines}do####对于log文件,直接放弃local script_temp=`echo $line | cut -d ":" -f 1`#当前文件为logw文件,放弃if [[ ${script_temp} = *\.log ]]then  echo "!!! extract_all_caller 当前文件为log文件,放弃当前行 ${script_temp}" >> ${debug_log} 2>&1continuefi if [[ ${flag} == "shell" ]] && [[ ${script_temp} = *\.sql ]]then  echo "!!! extract_all_caller 当前文件为sql文件,需要为shell文件,放弃当前行 ${script_temp}" >> ${debug_log} 2>&1continuefi ####对于被注解掉的行,直接放弃#如果包含的结果中,有--则取消这行local query_piece_temp=`echo $line | cut -d ":" -f 3 | python -c "s=raw_input();print(s.strip())"`if [[ ${query_piece_temp##*([[:blank:]])} == --* ]]then  echo "!!! extract_all_caller 注解掉的SQL代码,放弃当前行 ${query_piece_temp}" >> ${debug_log} 2>&1continuefi #如果包含的结果中,有##则取消这行if [[ ${query_piece_temp##*([[:blank:]])} == \#* ]]then   echo "!!! extract_all_caller 注解掉的SHELL代码,放弃当前行 ${query_piece_temp}" >> ${debug_log} 2>&1continuefi #如果包含的结果中,有echo开头则取消这行if [[ ${query_piece_temp##*([[:blank:]])} == echo* ]]then  echo "!!! extract_all_caller ECHO开头代码,放弃当前行 ${query_piece_temp}" >> ${debug_log} 2>&1continuefi ###去除掉所有行,留下来的都是有效行echo "extract_all_caller 有效的当前行 ${query_piece_temp}" >> ${debug_log} 2>&1### 把找到的调用脚本拼接起来,并且去重local contain_res=$(echo $related_script | grep -w "${script_temp}")if [[ "$contain_res" != "" ]]then#已经包含了,则忽略continueelserelated_script="$related_script $script_temp"fidonelocal IFS=$OLDIFSecho $related_script
}function extract_shell_call_path()
{local path=$1local key=$2local call_line=$3local flag='shell'local related_shell_script=`extract_all_caller $path $key ${flag}`# echo "related_shell_script ${related_shell_script}"if [ -z "$related_shell_script" ]; then# echo "!!!!!bad call line, line: ${call_line}"echo "!!! extract_shell_call_path 调用路径结束,脚本:${related_shell_script}" >> ${debug_log} 2>&1return 0fifor script_name in ${related_shell_script}doif [ -z "$script_name" ]thenecho "script_name is empty"continuefiif [ "big_main.sh" == "$script_name" ]thenlocal call_line="${call_line}:big_main.sh"echo "${call_line}"echo "!!! extract_shell_call_path 调用路径成功,${call_line}" >> ${debug_log} 2>&1breakfiif [ "run_main.sh" == "$script_name" ]thenlocal call_line="${call_line}:run_main.sh"echo "${call_line}"echo "!!! extract_shell_call_path 调用路径成功,${call_line}" >> ${debug_log} 2>&1breakfiif [ "run_ten.sh" == "$script_name" ]thenlocal call_line="${call_line}:run_ten.sh"echo "${call_line}"echo "!!! extract_shell_call_path 调用路径成功,${call_line}" >> ${debug_log} 2>&1breakfilocal call_line="${call_line}:$script_name"echo "!!! extract_shell_call_path 调用路径继续查找中,${call_line}" >> ${debug_log} 2>&1extract_shell_call_path $path $script_name $call_linedone}################################### 代码开始执行 ########################echo '' > $table_shell_call_log 2>&1
echo '' > $table_have_caller 2>&1# 表a2_source.pty_indv_20200226 对应的SQL脚本有:
# 表a2_source.rel_pty_con_pi_nonauto_20200226 对应的SQL脚本有:
# 表a2_source.gxb_yu_report_0 对应的SQL脚本有: gxb_sp_in_gxb_bus_report.sql
# 在此把所有需要查询的表放进来
# db_name='a2_source'
# table_names='a2_cpic_boss_1 a2_cpic_boss_all a2_cpic_boss_all_1 a2_cpic_boss_all_2 a2_cpic_boss_all_3 a2_cpic_boss_all_4 a2_cpic_boss_all_5 a2_cpic_boss_big a2_cpic_boss_test a2_cpic_boss_zl a2_cpic_gold_coin a2_cpic_gold_coin_cl a2_cpic_gold_coin_policy_no a2_cpic_gold_coin_step_0918 a2_cpic_gold_coin_step_0918_1 a2_cpic_gold_coin_step_1 a2_cpic_gold_coin_step_2 a2_cpic_gold_coin_step_3 a2_cpic_gold_coin_third_step_1 a2_cpic_gold_coin_third_step_1_0918_1 a2_cpic_gold_coin_third_tbyh a2_cpic_gold_coin_third_tbyh_1 a2_cpic_gold_coin_third_tbyh_2 a2_cpic_gold_coin_third_tbyh_3 a2_cpic_gold_policy all_month all_month_ql all_month_week all_month_week_ql auto_detail auto_detail_20200907 auto_detail_backup auto_detail_cx03 auto_detail_cx03_1 auto_detail_out auto_detail_out_date auto_detail_test auto_insurance auto_insurance_01 auto_insurance_01_all auto_insurance_all_bak auto_insurance_allot_cust_01 auto_insurance_allot_cust_02 auto_insurance_allot_cust_03 auto_insurance_allot_cust_04 auto_insurance_allot_cust_06 auto_insurance_allot_cust_1 auto_insurance_extend_01 auto_insurance_partition_01 auto_insurance_partition_02 auto_insurance_partition_03 auto_insurance_partition_03_724 auto_insurance_partition_04 auto_insurance_partition_0530 auto_insurance_partition_066 auto_insurance_partition_077 auto_insurance_partition_088 auto_insurance_partition_089 auto_insurance_partition_all_0604 auto_insurance_partition_bak auto_insurance_partition_bak_06 auto_insurance_partition_date auto_insurance_partition_from_mysql auto_insurance_partition_pre auto_insurance_partition_pre_001 auto_insurance_partition_pre_002 auto_insurance_partition_pre_01 auto_insurance_partition_pre_02 auto_insurance_partition_pre_03 auto_insurance_partition_pre_04 auto_insurance_partition_pre_05 auto_insurance_partition_pre_06 auto_insurance_partition_pre_shzmq auto_insurance_partition_pre_shzmq_01 auto_insurance_partition_pre_shzmq_02 auto_insurance_partition_to_oracle auto_insurance_target1 auto_insurance_xiu auto_insurance_xiu_201910_01 auto_insurance_xiu_201910_02 auto_insurance_xiu_201910_03 auto_insurance_xiu_201911_01 auto_insurance_xiu_201911_02 auto_insurance_xiu_201911_03 auto_insurance_xiu_201912_01 auto_insurance_xiu_201912_02 auto_insurance_xiu_201912_03 auto_insurance_xiu_202001_01 auto_insurance_xiu_202001_02 auto_insurance_xiu_202001_03 auto_insurance_xiu_202002_01 auto_insurance_xiu_202002_02 auto_insurance_xiu_202002_03 auto_insurance_xiu_202003_01 auto_insurance_xiu_202003_02 auto_insurance_xiu_202003_03 auto_insurance_xiu_202004_01 auto_insurance_xiu_202004_02 auto_insurance_xiu_202004_03 auto_insurance_xiu_pre auto_insurance_xiu_pre_01 auto_premium_t b2_01_p_1 b2_01_p_2 b2_01_p_3 b2_01_p_4 caf_achievements_2_tmp caf_car_detailed_1 caf_car_detailed_10 caf_car_detailed_11 caf_car_detailed_12 caf_car_detailed_13 caf_car_detailed_14 caf_car_detailed_15 caf_car_detailed_16 caf_car_detailed_2 caf_car_detailed_3 caf_car_detailed_4 caf_car_detailed_5 caf_car_detailed_6 caf_car_detailed_7 caf_car_detailed_8 caf_car_detailed_9 caf_car_enjoyment_detail_1 caf_car_enjoyment_detail_2 caf_car_enjoyment_detail_3 caf_car_enjoyment_detail_4 caf_car_enjoyment_detail_5 caf_car_enjoyment_detail_6 caf_car_enjoyment_detail_7 caf_car_enjoyment_detail_mf caf_car_long_detailed_1 caf_car_long_detailed_1_1 caf_cardimension_table caf_cardimension_table_1 caf_cardimension_table_10 caf_cardimension_table_11 caf_cardimension_table_12 caf_cardimension_table_2 caf_cardimension_table_3 caf_cardimension_table_4 caf_cardimension_table_5 caf_cardimension_table_6 caf_cardimension_table_7 caf_cardimension_table_7_1 caf_cardimension_table_7_2 caf_cardimension_table_8 caf_cardimension_table_9 caf_cardimension_table_tmp caf_claim_insurance_01 caf_claim_insurance_02 caf_claim_insurance_03 caf_claim_insurance_04 caf_claim_insurance_05 caf_claim_insurance_06 caf_claim_insurance_07 caf_claim_insurance_08 caf_claim_insurance_cust_01 caf_claim_insurance_cust_02 caf_claim_insurance_cust_03 caf_claim_insurance_cust_04 caf_claim_insurance_cust_05 caf_claim_insurance_cust_06 caf_claim_insurance_cust_07 caf_claim_insurance_cust_1_1 caf_claim_insurance_cust_1_2 caf_claim_insurance_cust_1_3 caf_claim_insurance_cust_1_4 caf_claim_insurance_cust_1_5 caf_commissioner_cx_01 caf_commissioner_cx_02 caf_commissioner_cx_03 caf_commissioner_cx_04 caf_commissioner_cx_05 caf_commissioner_cx_05_1 caf_commissioner_cx_06 caf_commissioner_cx_07 caf_commissioner_cx_08 caf_commissioner_cx_end caf_commissioner_cx_qd_01 caf_commissioner_date caf_commissioner_jj caf_commissioner_jj_001 caf_commissioner_jj_002 caf_commissioner_jj_01 caf_commissioner_jj_02 caf_commissioner_jj_03 caf_commissioner_jj_cd caf_commissioner_track_01 caf_commissioner_track_02 caf_commissioner_track_03 caf_commissioner_track_04 caf_commissioner_track_05 caf_commissioner_track_06 caf_commissioner_track_07 caf_commissioner_track_08 caf_commissioner_track_09 caf_commissioner_track_10 caf_commissioner_track_11 caf_commissioner_track_12 caf_commissioner_track_13 caf_commissioner_track_14 caf_commissioner_track_date caf_commissioner_track_end caf_commissioner_xb caf_customer_info_01 caf_customer_info_02 caf_customer_info_03 caf_customer_info_04 caf_customer_info_05 caf_customer_info_06 caf_customer_info_07 caf_customer_info_08 caf_customer_info_tb_01 caf_cx_dim_all_day caf_cx_dim_all_day_no_day caf_cx_healthinsur_csfb caf_cx_healthinsur_daily_table_01 caf_cx_healthinsur_inter_org caf_cx_healthinsur_txlf caf_cxbdtz caf_cxxb_kjgx_daily_0619 caf_cxxbjb_cjc_new_daily_1 caf_cxxbjb_cjc_new_daily_2 caf_cxxbjb_cjc_new_daily_3 caf_cxxbjb_cjc_new_daily_4 caf_cxxbjb_cjc_new_daily_5 caf_date_table_1 caf_date_table_2519 caf_date_table_2519_test caf_emp_cx_detail caf_fc_detailed_1 caf_fc_policy_list_1 caf_fc_policy_list_2 caf_fc_policy_list_3 caf_fc_policy_list_4 caf_fc_policy_list_5 caf_fc_policy_list_6 caf_fc_policy_list_7 caf_fcjb_detail_1 caf_fcjb_detail_2 caf_fcjb_detail_3 caf_fcjb_detail_4 caf_fcjb_detail_5 caf_orphan_commonsuccessors_01 caf_orphan_commonsuccessors_02 caf_orphan_commonsuccessors_03 caf_orphan_distribution_01 caf_orphan_distribution_02 caf_orphan_distribution_03 caf_orphan_distribution_04 caf_orphan_distribution_05 caf_orphan_distribution_06 caf_orphan_distribution_07 caf_orphan_distribution_08 caf_orphan_distribution_09 caf_orphan_distribution_10 caf_orphan_distribution_10_tmp caf_orphan_distribution_11 caf_orphan_distribution_12 caf_orphan_distribution_13 caf_orphan_distribution_14 caf_orphan_distribution_15 caf_orphan_distribution_16 caf_orphan_distribution_17 caf_orphan_distribution_18 caf_orphan_distribution_19 caf_orphan_distribution_20 caf_orphan_distribution_21 caf_orphan_distribution_22 caf_orphan_distribution_23 caf_orphan_distribution_24 caf_orphan_distribution_25 caf_orphan_distribution_26 caf_orphan_distribution_27 caf_orphan_distribution_28 caf_orphan_distribution_29 caf_orphan_distribution_30 caf_orphan_distribution_31 caf_orphan_distribution_32 caf_orphan_distribution_33 caf_orphan_distribution_bak caf_orphan_distribution_tmp_01 caf_orphan_distribution_tmp_02 caf_orphan_distribution_tmp_03 caf_orphan_distribution_tmp_04 caf_orphan_distribution_tmp_05 caf_orphan_order_1 caf_orphan_order_all caf_orphan_order_premium caf_orphan_order_premium_1 caf_orphan_order_premium_1_0 caf_orphan_order_premium_1_0_0 caf_orphan_order_premium_1_1 caf_orphan_order_premium_1_2 caf_orphan_order_premium_1_3 caf_orphan_order_premium_2 caf_orphan_order_premium_2_0 caf_orphan_order_premium_2_0_0 caf_orphan_order_premium_2_1 caf_orphan_order_premium_2_2 caf_orphan_order_update_1_1 caf_orphan_order_update_1_2 caf_orphan_order_update_2_1 caf_orphan_order_update_2_2 caf_orphan_order_update_3_1 caf_orphan_order_update_3_2 caf_orphan_order_update_4_1 caf_orphan_order_update_4_2 caf_orphan_order_update_5_1 caf_orphan_order_update_5_2 caf_orphan_order_update_6_1 caf_orphan_order_update_6_2 caf_orphan_order_update_7_1 caf_orphan_order_update_7_2 caf_orphan_qqrate caf_orphan_qqrate_1_1 caf_orphan_qqrate_1_2 caf_orphan_qqrate_1_3 caf_orphan_qqrate_1_4 caf_orphan_qqrate_1_5 caf_orphan_qqrate_1_6 caf_orphan_qqrate_sum_tmp caf_orphan_reassignment_01 caf_orphan_reassignment_02 caf_p_customer_list_1 caf_p_customer_list_2 caf_p_customer_list_all caf_policy_xb_report_1 caf_policy_xb_report_10 caf_policy_xb_report_11 caf_policy_xb_report_2 caf_policy_xb_report_3 caf_policy_xb_report_4 caf_policy_xb_report_5 caf_policy_xb_report_6 caf_policy_xb_report_7 caf_policy_xb_report_8 caf_policy_xb_report_9 caf_policy_xb_report_test111 caf_property_2 caf_property_carsales_table_01 caf_property_carsales_table_tmp caf_property_l caf_property_mid caf_property_mid_01 caf_property_mid_02 caf_salesboard_0119 caf_salesboard_1 caf_salesboard_10 caf_salesboard_10_1 caf_salesboard_10_2 caf_salesboard_10_3 caf_salesboard_10_4 caf_salesboard_11 caf_salesboard_11_1 caf_salesboard_11_2 caf_salesboard_11_3 caf_salesboard_11_4 caf_salesboard_11_tmp1 caf_salesboard_11_tmp3 caf_salesboard_12 caf_salesboard_12_1 caf_salesboard_12_2 caf_salesboard_12_3 caf_salesboard_12_4 caf_salesboard_13_1 caf_salesboard_13_3 caf_salesboard_14_1 caf_salesboard_14_3 caf_salesboard_1_1 caf_salesboard_1_2 caf_salesboard_1_3 caf_salesboard_1_4 caf_salesboard_2 caf_salesboard_2_1 caf_salesboard_2_2 caf_salesboard_2_3 caf_salesboard_2_4 caf_salesboard_3 caf_salesboard_3_1 caf_salesboard_3_2 caf_salesboard_3_3 caf_salesboard_3_4 caf_salesboard_4 caf_salesboard_4_1 caf_salesboard_4_2 caf_salesboard_4_3 caf_salesboard_4_4 caf_salesboard_5 caf_salesboard_5_1 caf_salesboard_5_2 caf_salesboard_5_3 caf_salesboard_5_4 caf_salesboard_6 caf_salesboard_6_1 caf_salesboard_6_2 caf_salesboard_6_3 caf_salesboard_6_4 caf_salesboard_7 caf_salesboard_7_1 caf_salesboard_7_2 caf_salesboard_7_3 caf_salesboard_7_4 caf_salesboard_8 caf_salesboard_8_1 caf_salesboard_8_2 caf_salesboard_8_3 caf_salesboard_8_4 caf_salesboard_9 caf_salesboard_9_1 caf_salesboard_9_2 caf_salesboard_9_3 caf_salesboard_9_4 caf_salesboard_tmp caf_salesboard_tmp1 caf_salesboard_tmp2 caf_salesboard_tmp3 caf_salesboard_tmp4 caf_sx_dim_all_day caf_sx_healthinsur_daily_table_01 caf_sxc1_2_9_tmp caf_sxc_2_1 caf_sxc_2_12 caf_sxc_2_12_1 caf_sxc_2_12_tmp caf_sxc_2_12_tmp_1 caf_sxc_2_15 caf_sxc_2_15_1 caf_sxc_2_15_tmp caf_sxc_2_15_tmp_1 caf_sxc_2_18 caf_sxc_2_18_1 caf_sxc_2_18_tmp caf_sxc_2_18_tmp_1 caf_sxc_2_1_tmp caf_sxc_2_2 caf_sxc_2_2_1 caf_sxc_2_2_qd caf_sxc_2_2_tmp caf_sxc_2_3 caf_sxc_2_3_1 caf_sxc_2_3_tmp caf_sxc_2_3_tmp_1 caf_sxc_2_6 caf_sxc_2_6_1 caf_sxc_2_6_tmp caf_sxc_2_6_tmp_1 caf_sxc_2_9 caf_sxc_2_9_1 caf_sxc_2_9_tmp caf_sxc_2_9_tmp_1 caf_sxc_3_12 caf_sxc_3_12_1 caf_sxc_3_12_tmp caf_sxc_3_12_tmp_1 caf_sxc_3_15 caf_sxc_3_15_1 caf_sxc_3_15_tmp caf_sxc_3_15_tmp_1 caf_sxc_3_18 caf_sxc_3_18_1 caf_sxc_3_18_tmp caf_sxc_3_18_tmp_1 caf_sxc_3_3 caf_sxc_3_3_1 caf_sxc_3_3_tmp caf_sxc_3_3_tmp_1 caf_sxc_3_6 caf_sxc_3_6_1 caf_sxc_3_6_tmp caf_sxc_3_6_tmp_1 caf_sxc_3_9 caf_sxc_3_9_1 caf_sxc_3_9_tmp caf_sxc_3_9_tmp_1 caf_sxc_4_12 caf_sxc_4_12_1 caf_sxc_4_12_tmp caf_sxc_4_12_tmp_1 caf_sxc_4_15 caf_sxc_4_15_1 caf_sxc_4_15_tmp caf_sxc_4_15_tmp_1 caf_sxc_4_18 caf_sxc_4_18_1 caf_sxc_4_18_tmp caf_sxc_4_18_tmp_1 caf_sxc_4_3 caf_sxc_4_3_1 caf_sxc_4_3_tmp caf_sxc_4_3_tmp_1 caf_sxc_4_6 caf_sxc_4_6_1 caf_sxc_4_6_tmp caf_sxc_4_6_tmp_1 caf_sxc_4_9 caf_sxc_4_9_1 caf_sxc_4_9_tmp caf_sxc_4_9_tmp_1 caf_sxc_5_12 caf_sxc_5_12_1 caf_sxc_5_12_tmp caf_sxc_5_12_tmp_1 caf_sxc_5_15 caf_sxc_5_15_1 caf_sxc_5_15_tmp caf_sxc_5_15_tmp_1 caf_sxc_5_18 caf_sxc_5_18_1 caf_sxc_5_18_tmp caf_sxc_5_18_tmp_1 caf_sxc_5_3 caf_sxc_5_3_1 caf_sxc_5_3_tmp caf_sxc_5_3_tmp_1 caf_sxc_5_6 caf_sxc_5_6_1 caf_sxc_5_6_tmp caf_sxc_5_6_tmp_1 caf_sxc_5_9 caf_sxc_5_9_1 caf_sxc_5_9_tmp caf_sxc_5_9_tmp_1 caf_sxc_d_3_12 caf_sxc_d_3_12_1 caf_sxc_d_3_12_tmp caf_sxc_d_3_12_tmp_1 caf_sxc_d_3_15 caf_sxc_d_3_15_1 caf_sxc_d_3_15_tmp caf_sxc_d_3_15_tmp_1 caf_sxc_d_3_18 caf_sxc_d_3_18_1 caf_sxc_d_3_18_tmp caf_sxc_d_3_18_tmp_1 caf_sxc_d_3_3 caf_sxc_d_3_3_1 caf_sxc_d_3_3_tmp caf_sxc_d_3_3_tmp_1 caf_sxc_d_3_6 caf_sxc_d_3_6_1 caf_sxc_d_3_6_tmp caf_sxc_d_3_6_tmp_1 caf_sxc_d_3_9 caf_sxc_d_3_9_1 caf_sxc_d_3_9_tmp caf_sxc_d_3_9_tmp_1 caf_sxc_d_5_12 caf_sxc_d_5_12_1 caf_sxc_d_5_12_tmp caf_sxc_d_5_12_tmp_1 caf_sxc_d_5_15 caf_sxc_d_5_15_1 caf_sxc_d_5_15_tmp caf_sxc_d_5_15_tmp_1 caf_sxc_d_5_18 caf_sxc_d_5_18_1 caf_sxc_d_5_18_tmp caf_sxc_d_5_18_tmp_1 caf_sxc_d_5_3 caf_sxc_d_5_3_1 caf_sxc_d_5_3_tmp caf_sxc_d_5_3_tmp_1 caf_sxc_d_5_6 caf_sxc_d_5_6_1 caf_sxc_d_5_6_tmp caf_sxc_d_5_6_tmp_1 caf_sxc_d_5_9 caf_sxc_d_5_9_1 caf_sxc_d_5_9_tmp caf_sxc_d_5_9_tmp_1 caf_sxc_mx_report_001 caf_sxc_mx_report_01 caf_sxc_mx_report_01_test caf_sxc_mx_report_02 caf_sxc_mx_report_02_1 caf_sxc_mx_report_02_1_test caf_sxc_mx_report_02_2 caf_sxc_mx_report_03 caf_sxc_mx_report_04 caf_sxc_mx_report_05 caf_sxc_mx_report_06 caf_sxc_mx_report_1 caf_sxc_mx_report_1_test caf_sxc_mx_report_1_tmp caf_sxc_mx_report_20 caf_sxc_mx_report_21 caf_sxc_mx_report_qd_sample caf_sxc_mx_report_sample caf_sxc_report_1 caf_sxc_report_2 caf_sxc_report_ata caf_sxc_tmp1_2_2 caf_sxc_tmp2_2_2 caf_sxc_tmp3_2_2 caf_sxc_tmp4_2_2 caf_sxc_tmp5_2_2 caf_sxc_tmp6_2_2 caf_sxc_tmp7_2_2 caf_sxc_tmp8_2_2 caf_tbyh_daily caf_tbyh_daily_1 caf_tbyh_daily_10 caf_tbyh_daily_11 caf_tbyh_daily_12 caf_tbyh_daily_13 caf_tbyh_daily_14 caf_tbyh_daily_1_1 caf_tbyh_daily_2 caf_tbyh_daily_3 caf_tbyh_daily_4 caf_tbyh_daily_5 caf_tbyh_daily_6 caf_tbyh_daily_7 caf_tbyh_daily_8 caf_tbyh_daily_9 caf_tbyh_daily_tmp caf_tbyh_daily_tmp1 caf_tbyh_daily_tmp2 caf_tbyh_daily_tmp3 caf_tbyh_daily_tmp4 caf_tbyh_daily_tmp5 caf_tbyh_daily_tmp6 caf_tbyh_emp_tmp caf_tbyh_jbcxqd_01 caf_tbyh_jbcxqd_02 caf_tbyh_jbcxqd_03 caf_tbyh_jbcxqd_04 caf_tbyh_jbdaily_01 caf_tbyh_jbdaily_02 caf_tbyh_jbdaily_03 caf_tbyh_jbdaily_04 caf_tbyh_jbdaily_temp caf_tbyh_new_car_ins caf_tbyh_new_car_ins_1 caf_tbyh_new_car_ins_10 caf_tbyh_new_car_ins_11 caf_tbyh_new_car_ins_12 caf_tbyh_new_car_ins_2 caf_tbyh_new_car_ins_3 caf_tbyh_new_car_ins_4 caf_tbyh_new_car_ins_5 caf_tbyh_new_car_ins_6 caf_tbyh_new_car_ins_7 caf_tbyh_new_car_ins_8 caf_tbyh_new_car_ins_9 caf_tbyh_new_long_ins caf_tbyh_new_long_ins_01 caf_tbyh_new_long_ins_02 caf_tbyh_new_long_ins_03 caf_tbyh_new_long_ins_04 caf_tbyh_new_long_ins_05 caf_tbyh_new_long_ins_06 caf_tbyh_new_long_ins_07 caf_tbyh_new_long_ins_08 caf_tbyh_new_long_ins_09 caf_tbyh_xfqd_1 caf_tbyh_xfqd_2 caf_tbyh_xfqd_3 caf_tbyh_xfqd_4 caf_tbyh_xfqd_5 caf_tbyh_xfqd_6 caf_zp_cx_dim_all_day caf_zp_cx_dim_all_day_no_day caf_zp_cx_dim_not_sxc caf_zp_sx_dim_all_day cds cds_bus_ql_report_1 cds_bus_ql_report_11 cds_bus_ql_report_2 cds_bus_ql_report_21 cds_bus_ql_report_3 cds_bus_ql_report_31 cds_bus_ql_report_3_20200803 cds_bus_ql_report_71 cds_bus_ql_report_71_20201221 cds_bus_ql_report_71_stock cds_bus_ql_report_71_tmp cds_bus_ql_report_71_tmp2 cds_bus_ql_report_car_1 cds_bus_ql_report_car_2 cds_bus_ql_report_car_2_card cds_bus_ql_report_car_3 cds_bus_ql_report_car_4 cds_bus_ql_report_car_5 cds_bus_ql_report_car_6 cds_bus_ql_report_car_624 cds_bus_ql_report_car_gx cds_bus_ql_report_car_gx_stock cds_bus_ql_report_car_jb cds_bus_ql_report_car_jb_hjx_test cds_bus_ql_report_car_jb_hjx_test_chantui cds_bus_ql_report_edition_0 cds_bus_ql_report_edition_1 cds_bus_ql_report_edition_1_01 cds_bus_ql_report_edition_2 cds_bus_ql_report_end_01 cds_bus_ql_report_end_01_20200803 cds_bus_ql_report_end_03 cds_bus_ql_report_hjx_1 cds_bus_ql_report_hjx_2 cds_bus_ql_report_hjx_3 cds_bus_ql_report_hx cds_bus_ql_report_hx_hjx cds_bus_ql_report_hx_hjx_stock cds_bus_ql_report_hx_hjx_test_20200728 cds_bus_ql_report_hx_hjx_test_20210111 cds_bus_ql_report_hx_hz cds_bus_ql_report_hx_hz_hjx_test cds_bus_ql_report_hx_hz_stock cds_bus_ql_report_hx_stock cds_bus_ql_report_mf_jb cds_bus_ql_report_mf_jb_stock cds_bus_ql_report_mf_policy_hjx cds_bus_ql_report_mf_policy_hjx_stock cds_bus_ql_report_mf_sm cds_bus_ql_report_mf_sm_stock cds_bus_ql_report_phone01 cds_bus_ql_report_phone02 cds_bus_ql_report_phone02_624 cds_bus_ql_report_phone02_624_1 cds_bus_ql_report_policy cds_bus_ql_report_tmp cds_bus_ql_report_tmp_1 cds_bus_report_1 cds_bus_report_2 cds_bus_report_3 cds_bus_report_71 cds_bus_report_71_20201221 cds_bus_report_71_stock cds_bus_report_car_1 cds_bus_report_car_2 cds_bus_report_car_2_card cds_bus_report_car_3 cds_bus_report_car_4 cds_bus_report_car_5 cds_bus_report_car_6 cds_bus_report_car_gx cds_bus_report_car_jb cds_bus_report_car_jb_test_test cds_bus_report_end_01 cds_bus_report_end_03 cds_bus_report_end_hjx_01 cds_bus_report_hjx_1 cds_bus_report_hjx_2 cds_bus_report_hjx_3 cds_bus_report_hx cds_bus_report_hx_hjx cds_bus_report_hx_hjx_20210111_test cds_bus_report_hx_hjx_bak_20210119 cds_bus_report_hx_hjx_stock cds_bus_report_hx_hz cds_bus_report_hx_hz_stock cds_bus_report_hx_stock cds_bus_report_mf_jb cds_bus_report_mf_jb_stock cds_bus_report_mf_policy_hjx cds_bus_report_mf_policy_hjx_stock cds_bus_report_mf_sm cds_bus_report_phone01 cds_bus_report_phone02 cds_bus_report_policy cds_bus_report_policy_612 cds_bus_report_policy_del cds_bus_report_policy_hjx_01 cds_bus_report_policy_hjx_02 cds_bus_report_policy_hjx_03 cds_bus_report_policy_hjx_03_tmp cds_bus_report_policy_hjx_04 cds_bus_report_policy_hjx_04_tmp cds_bus_report_policy_hjx_05 cds_bus_report_policy_hjx_06 cds_bus_report_policy_hjx_06_tmp cds_bus_report_policy_hjx_07 cds_bus_report_policy_hjx_08 cds_bus_report_policy_hjx_09 cds_bus_report_policy_hjx_09_tmp_01 cds_bus_report_policy_hjx_09_tmp_02 cds_bus_report_policy_hjx_10 cds_bus_report_policy_hjx_ql_01 cds_bus_report_policy_hjx_ql_02 cds_bus_report_policy_hjx_ql_03 cds_bus_report_policy_hjx_ql_04 cds_bus_report_policy_hjx_ql_04_tmp cds_bus_report_policy_hjx_ql_05 cds_bus_report_policy_hjx_ql_06 cds_bus_report_policy_hjx_ql_07 cds_bus_report_policy_hjx_ql_07_tmp cds_bus_report_policy_hjx_ql_08 cds_bus_report_policy_hjx_ql_09 cds_bus_report_policy_hjx_ql_10 cds_bus_report_policy_hjx_ql_11 cds_bus_report_policy_hjx_ql_12 cds_bus_report_policy_hjx_ql_13 cds_bus_report_tmp cds_bus_report_tmp_1 cds_car cds_meeting_report_1 cds_meeting_report_2 cds_meeting_report_3 chanxiaojiankang_policyno chege_test_hjx chege_test_hjx1 con_a_policy con_cj_annuity con_cjaty_corp con_h_policy con_l_policy correct_cxs cqj_02 cqj_02_12 crs_share_report_emp_1 crs_share_report_emp_2 crs_share_report_l_1 crs_share_report_l_2 crs_tmp_customersa_change1 crs_tmp_customersa_l1 crs_tmp_p_customersa_sign_m1 crsp_cxge_fpmx_01 crsp_cxge_fpmx_02 crsp_cxge_fpmx_03 crsp_cxge_fpmx_04 crsp_cxge_fpmx_05 crsp_cxge_fpmx_06 crsp_cxge_fpmx_07 crsp_cxge_fpmx_08 crsp_cxge_fpmx_09 crsp_cxge_fpmx_10 crsp_cxge_fpmx_11 crsp_cxge_fpmx_12 crsp_cxge_fpmx_13 crsp_cxge_fpmx_14 crsp_cxge_fpmx_15 crsp_khfx_sxjb_cust_00 crsp_khfx_sxjb_cust_01 crsp_khfx_sxjb_cust_02 crsp_khfx_sxjb_cust_03 crsp_khfx_sxjb_cust_04 crsp_khfx_sxjb_cust_05 crsp_khfx_sxjb_cust_06 crsp_khfx_sxjb_cust_07 crsp_khfx_sxjb_cust_08 crsp_khfx_sxjb_cust_09 crsp_khfx_sxjb_cust_10 crsp_khfx_sxjb_cust_11 crsp_khfx_sxjb_cust_12 crsp_khfx_sxjb_cust_13 crsp_khfx_sxjb_cust_14 crsp_khfx_sxjb_cust_15 crsp_khfx_sxjb_cust_16 crsp_khfx_sxjb_date_01 crsp_khfx_sxjb_date_02 crsp_khfx_sxjb_date_03 crsp_khfx_sxjb_date_04 crsp_khfx_sxjb_date_05 crsp_khfx_sxjb_date_06 crsp_khfx_sxjb_date_07 crsp_khfx_sxjb_date_08 crsp_khfx_sxjb_date_09 crsp_khfx_sxjb_date_10 crsp_khfx_sxjb_date_11 crsp_khfx_sxjb_date_12 crsp_to_khjy_cxyh_tmp crsp_to_kjgx_cxwy_01 crsp_to_kjgx_cxwy_02 crsp_to_kjgx_cxwy_03 crsp_to_kjgx_cxwy_04 crsp_to_kjgx_cxwy_05 crsp_to_kjgx_cxwy_06 crsp_to_kjgx_cxyh_1 crsp_to_kjgx_cxyh_2 crsp_to_kjgx_etc_all crsp_to_kjgx_etc_sum crsptokhjy_lbh_emp crsptokhjy_lbh_emp111 crsptokhjy_orphan_emp cur_date_t cx02_sp_frist_page_model_1_1 cx03_sp_auto_performance_1 cx03_sp_auto_performance_2 cx_use cxjk_20201127 cxjk_tishu_detail_20210208_1 cxjk_tishu_detail_20210208_10 cxjk_tishu_detail_20210208_11 cxjk_tishu_detail_20210208_2 cxjk_tishu_detail_20210208_3 cxjk_tishu_detail_20210208_4 cxjk_tishu_detail_20210208_5 cxjk_tishu_detail_20210208_6 cxjk_tishu_detail_20210208_7 cxjk_tishu_detail_20210208_8 cxjk_tishu_detail_20210208_9 cxjk_tishu_detail_20210301 data_extract_lbh_qd data_extract_lbh_summary data_extract_lsh_summary data_extract_sxc_detail data_extract_sxc_detail_01 data_extract_sxc_detail_summary data_extract_sxcjb_detail data_extract_sxcjb_detail_01 data_extract_sxcjb_detail_02 data_extract_sxcjb_detail_jianshuwang data_extract_sxcjb_detail_jianshuwang_01 data_extract_sxcjb_detail_summary date_dem_z date_dem_z_1 date_dem_z_tmp date_dem_z_tmp_1 date_dem_z_with_2017 date_dem_z_with_2018 dim_day dim_day_001 dim_day_01 dim_day_ex dim_each_day_until_today dim_enum_list dim_month dim_org dim_salesboard dim_sxfc_day_info dim_sxfc_day_org dim_unique_sales_org_2_zgs_qudao dim_unique_sales_org_2_zgs_qudao_sxfc dwd_policy_info dwd_policy_info_2019 dwd_policy_info_2020 ecif_jy_national ecif_jy_work edw_kjgx_taihaoxu_policy_info_dxb edw_kjgx_taihaoxu_policy_yxb edw_p_app_party_id_1 edw_p_app_party_id_2 edw_p_app_party_id_3 edw_p_app_party_id_4 edw_p_app_party_id_5 edw_p_app_party_id_6 edw_tbyh_customer_02 edw_tbyh_customer_04_01 edw_tbyh_customer_05 edw_tbyh_customer_05_01 edw_tbyh_customer_05_02 edw_tbyh_customer_05_03 edw_tbyh_customer_06 edw_tbyh_customer_06_01 edw_tbyh_customer_07 edw_tbyh_customer_08 edw_tbyh_customer_08_01 edw_tbyh_customer_09 edw_tbyh_customer_09_01 edw_tbyh_customer_l_01 edw_tbyh_customer_l_01_01 edw_tbyh_customer_l_02 edw_tbyh_customer_l_03 edw_tbyh_customer_l_06_01 edw_tbyh_customer_p_01 edw_tbyh_customer_p_02 edw_tbyh_customer_p_04 edw_tbyh_customer_p_04_01 edw_tbyh_cxyh_p_premium edw_tbyh_cxyh_p_premium_01 edw_tbyh_cxyh_p_premium_02 edw_tbyh_cxyh_p_premium_03 edw_to_crsp_cxxb_01 edw_to_crsp_cxxb_02 edw_to_crsp_m_cxyh edw_to_crsp_m_cxyh_l_test edw_to_crsp_m_cxyh_p edw_to_crsp_m_cxyh_p_01 edw_to_crsp_m_cxyh_p_01_01 edw_to_crsp_m_cxyh_p_01_02 edw_to_crsp_m_cxyh_p_01_03 edw_to_crsp_m_cxyh_p_02 edw_to_crsp_m_cxyh_p_03 edw_to_crsp_m_cxyh_p_04 edw_to_crsp_m_cxyh_p_05 edw_to_crsp_m_cxyh_p_06 edw_to_crsp_m_cxyh_p_07 edw_to_crsp_m_cxyh_p_08 edw_to_crsp_m_cxyh_p_09 edw_to_crsp_m_cxyh_p_10 edw_to_crsp_m_cxyh_p_11 edw_to_crsp_m_cxyh_p_12 edw_to_m4_l_policy_list_from_o_20200518 edw_to_m4_p_policy_list_1 edw_to_m4_p_policy_list_11 edw_to_m4_p_policy_list_from_o_20200514 emp_organ empno_six_months_premium everyday_date get_salesboard_map_2500_0 get_salesboard_map_2500_1 get_salesboard_map_2500_11 get_salesboard_map_2500_2 get_salesboard_map_2500_3 get_salesboard_map_2500_4 get_salesboard_map_2500_5 get_salesboard_map_2500_x get_salesboard_sxc_2500_1 get_sendcarerecord_tmp give_care_for_detail_01 give_care_for_detail_018 give_care_for_detail_02 give_care_for_detail_03 give_care_for_detail_04 give_care_for_detail_05 give_care_for_detail_06 give_care_for_detail_07 give_care_for_detail_08 give_care_for_detail_09 give_care_for_detail_10 give_care_for_detail_11 gp15ebo2o_sls_potentialcustomer_tmp grqdrg_tbl_zj_cdsyj_report_detail gxb_act_manage_report_tmp gxb_act_mge_report_1 gxb_act_mge_report_1_channel gxb_act_mge_report_2 gxb_act_mge_report_3 gxb_act_mge_report_4 gxb_act_mge_report_5 gxb_act_report_1 gxb_act_report_1_tmp gxb_act_report_1_tmp1 gxb_act_report_1_tmp2 gxb_act_report_2 gxb_act_report_3 gxb_act_report_tmp gxb_bus_report_2 gxb_bus_report_2_channel gxb_bus_report_3 gxb_bus_report_4 gxb_bus_report_actual gxb_bus_report_actual_1 gxb_bus_report_actual_1_channel gxb_bus_report_actual_channel gxb_bus_report_actual_test gxb_bus_report_actual_test_1 gxb_bus_report_bus gxb_bus_report_bus_1 gxb_bus_report_bus_2 gxb_bus_report_channel gxb_bus_report_end_1 gxb_bus_report_end_2 gxb_bus_report_end_3 gxb_bus_report_end_4 gxb_bus_report_end_5 gxb_bus_report_end_test_5 gxb_bus_report_jb gxb_bus_report_jb_1 gxb_bus_report_jb_1_0 gxb_bus_report_jb_2 gxb_bus_report_yu gxb_bus_report_yu_channel gxb_bus_report_yu_tmp gxb_bus_report_zz gxb_bus_report_zz_channel gxb_channel_report gxb_channel_report_1 gxb_everyday_date gxb_inter_org gxb_inter_org_1 gxb_inter_org_2 gxb_jb_ts_01 gxb_jb_ts_02 gxb_jb_ts_03 gxb_jb_ts_04 gxb_to_caf_actual gxb_to_caf_actual_test gxb_to_caf_policy gxb_yu_report_01 gxb_yu_report_02 ids_2519 ids_2519_qsh ids_2519_qsh_inc ids_2519_qsh_inc_test ids_2519_qsh_test ids_auto_agreement_t_1103 ids_auto_payment_due_t ids_exrate_month_t ids_party_t_bb ids_party_t_cy ids_party_t_tb ids_to_bdxb_2519_1 ids_to_bdxb_2519_1_test ids_to_bdxb_2519_2 ids_to_bdxb_2519_2_test ids_to_bdxb_2519_3 ids_to_bdxb_2519_3_test ids_to_bdxb_2519_4 ids_to_bdxb_2519_4_test ids_to_bdxb_2519_5 ids_to_bdxb_2519_5_test ids_to_crsp_2519_1 ids_to_crsp_2519_1_test ids_to_crsp_2519_2 ids_to_crsp_2519_2_test ids_to_crsp_2519_3 ids_to_crsp_2519_3_test ids_to_crsp_2519_4 ids_to_crsp_2519_4_test ids_to_crsp_2519_5 ids_to_crsp_2519_5_test ids_to_crsp_2519_6 ids_to_crsp_2519_6_test ids_to_crsp_2519_qsh ids_to_crsp_2519_qsh_test ids_to_crsp_d2500 ids_to_crsp_d2500_1 ids_to_crsp_d2500_11 ids_to_crsp_d2500_2 ids_to_crsp_d2500_2018 ids_to_crsp_d2500_2018_1 ids_to_crsp_d2500_2018_end ids_to_crsp_d2500_20200716 ids_to_crsp_d2500_20201106 ids_to_crsp_d2500_20201113 ids_to_crsp_d2500_20201116 ids_to_crsp_d2500_20201117 ids_to_crsp_d2500_20201231 ids_to_crsp_d2500_20210125 ids_to_crsp_d2500_20210126 ids_to_crsp_d2500_20210128 ids_to_crsp_d2500_20210128_2 ids_to_crsp_d2500_20210128_3 ids_to_crsp_d2500_22 ids_to_crsp_d2500_3 ids_to_crsp_d2500_4 ids_to_crsp_d2500_bk0325 ids_to_crsp_d2500_pre ids_typecomp_t inter_org_dept inter_org_khjy inter_org_khjy_bak20201229 inter_org_khjy_bak20201230 inter_org_khjy_bak20210107 inter_org_xll inter_org_zhuanyuan_01 inter_org_zhuanyuan_02 jkpro1 jkpro_hjx jkpro_hjx2 jkpro_hjx3 jkpro_hjx4 jkx_new_record_jjl_detail_1 jkx_new_record_jjl_detail_2 jkx_new_record_jjl_detail_online jkx_new_record_jjl_detail_online_bak_2 jx_org1 jx_org2 jx_org3 jxxs_nonauto_cross_sales_day_tmpsx_4 jy_adr jy_adr_1 jy_adr_2 jy_tel jy_tel_1 jy_tel_2 jy_xzq kanbantishu_20210105 kenian_test khjy_to_crsp_d_cxba khjy_to_crsp_d_cxba_bak20210108 khjy_to_crsp_d_ge khjy_to_crsp_d_ge_bak20210108 khjy_to_crsp_d_gx khjy_to_crsp_d_gx_20200908 khjy_to_crsp_d_gx_bak20210108 khjy_to_crsp_d_gxge khjy_to_crsp_d_gxge_20200908 khjy_to_crsp_d_gxge_bak20210108 khjy_to_crsp_d_gxge_del khjy_to_crsp_d_xb1 khjy_to_crsp_d_xb1_20200908 khjy_to_crsp_d_xb1_bak20210108 khjy_to_crsp_d_xb2 khjy_to_crsp_d_xb2_20200908 khjy_to_crsp_d_xb2_bak20210108 khjy_to_crsp_emp_list khjy_to_crsp_emp_list_all khjy_to_crsp_ge_01 khjy_to_crsp_ge_tmp khjy_to_crsp_jb_01 khjy_to_crsp_jb_02 khjy_to_crsp_jb_03 khjy_to_crsp_jb_new_bk khjy_to_crsp_jb_new_bk_1 khjy_to_crsp_jb_new_bk_2 khjy_to_crsp_jb_new_bk_26 khjy_to_crsp_orphan_car khjy_to_crsp_orphan_car_all kjgx_certno kjgx_cross_sale_issue_1 kjgx_cross_sale_issue_2 kjgx_cross_sale_issue_2_1 kjgx_cross_sale_issue_2_2 kjgx_cross_sale_issue_3 kjgx_cross_sale_number_of_people_0 kjgx_cross_sale_number_of_people_0_bak kjgx_cross_sale_number_of_people_1 kjgx_cross_sale_number_of_people_2 kjgx_cross_sale_promotion_coverage_1 kjgx_cross_sale_promotion_coverage_2 kjgx_cross_sale_target_usage_1 kjgx_cross_sale_target_usage_2 kjgx_cross_sale_target_usage_2_1 kjgx_cross_sale_target_usage_2_2 kjgx_cross_sale_target_usage_3 kjgx_mb_sendcarebenefits_info_tmp kjgx_sendcare_tmp kjgx_sgh_daily_report_01 kjgx_sgh_daily_report_02 kjgx_sgh_daily_report_03 kjgx_sgh_daily_report_04 kjgx_sgh_daily_report_05 kjgx_sgh_daily_report_06 kjgx_sgh_daily_report_07 kjgx_sgh_daily_report_08 kjgx_sgh_daily_report_funnel_01 kjgx_sgh_daily_report_funnel_03 kjgx_t_sendcare_to_bigdata_tmp kjgx_tmp_0304 kjgx_to_crsp_act kjgx_to_crsp_act_1 kjgx_to_crsp_d_rwfp_01 kjgx_to_crsp_d_rwfp_02 kjgx_to_crsp_d_rwfp_03 kjgx_to_crsp_d_rwfp_tmp kjgx_to_crsp_emp l_chn_chl_role_detail l_chn_his_empno_sc l_org_his_internal_org l_pty_his_rp_rl label_record lb_business_detail lb_business_detail_0 lb_promotion_detail lb_qyjb_sj_detail_not_transacted lb_qyjb_sj_detail_tmp1 lb_qyjb_sj_detail_tmpx lb_qyjb_sj_detail_transacted lbh_new_temp ld_prem_new ld_prem_new_0 life_insurance_achievement_org life_insurance_new_henan life_insurance_new_henan_ids lm_m_fun_promotion_08 lm_m_fun_promotion_09 lm_m_fun_promotion_11 lm_m_fun_promotion_12 mb_znmf_meeting_id mf_1 mf_1_hjx mf_policy mf_policy_hjx_03 mf_ql_1 mf_ql_1_hjx mf_ql_policy mf_ql_policy_hjx_01 nianbao_reuslt_1 nianbao_reuslt_1_2019 nianbao_reuslt_1_2020 nianbao_reuslt_1_nonjiduan nianbao_reuslt_2 nianbao_reuslt_2_2019 nianbao_reuslt_2_2020 nianbao_reuslt_2_nonjiduan nonauto_premium_01 nonauto_premium_02 nonauto_premium_03 nonauto_premium_04 nonauto_premium_05 o2o_01 one_to_twelve_table p10_ids_to_crsp_delay p10_ids_to_crsp_offer p10ids_empexp p10ids_intorg p10ids_phone p10ids_phone_1 p10ids_prerec p10ids_riskcon p10ids_risklist p_cxcode_1 p_cxcode_2 p_org_account_premium p_tmp_orphan_distribution p_zhuanyuan_xb_new policy_life policy_life_2 policy_life_3 policy_life_cust_2 policy_life_cust_family_apid policy_life_cust_mq_2 policy_life_cust_team_family_apid policy_life_family policy_life_mq_2 policy_prop policy_prop_val pt09dacrsp_ncsm_daybf_extract pt09dacrsp_ncsm_daybf_extract_fgs pty_corp_cust pty_edu pty_income_expns pty_indv_sub pty_job qiao_dim_li_dep_all qiao_dim_li_dep_all1 qiao_pi_policy_emp3_6_2 qyjb_participant rel_pty_con rel_pty_con_2 renli_temp rg_to_crsp_jj_jg_amount rg_to_crsp_jj_time rg_to_crsp_jj_time1 rg_to_crsp_jj_zj rg_to_crsp_yj_sum rg_to_crsp_zjyjmx riskcon_tmp_20200804 rms_all_premium rms_all_premium_tmp rms_all_premium_tmp_bak20201206 rms_all_premium_tmp_bak20201210 rms_all_premium_tmp_bak20201213 rms_all_premium_tmp_bak20201214 rms_all_premium_tmp_bak20201215 rms_all_premium_tmp_bak20201216 rms_all_premium_tmp_bak20201217 rms_all_premium_tmp_bak20201221 rms_health_premium rms_health_premium_tmp rms_health_premium_tmp_bak20201206 rms_health_premium_tmp_bak20201210 rms_health_premium_tmp_bak20201213 rms_health_premium_tmp_bak20201214 rms_health_premium_tmp_bak20201215 rms_health_premium_tmp_bak20201217 rms_health_premium_tmp_bak20201221 rms_plan_premium_detail rms_policy_detail_tmp rms_policy_no rms_test s_codes s_codes_bak20210207 send_care_basic send_care_basic_bak20201206 send_care_basic_tmp send_care_v4_gjgx_display_info_tmp sendcarerecord_tmp sfjd_bushu share_sendcarerecord_tmp six_workdate sp_auto_performance_1 sp_auto_performance_2 sp_in_edw_to_crsp_m_cxyh_l_10 sp_in_edw_to_crsp_m_cxyh_l_11 sp_in_edw_to_crsp_m_cxyh_l_12 sp_in_edw_to_crsp_m_cxyh_l_1_1 sp_in_edw_to_crsp_m_cxyh_l_1_2 sp_in_edw_to_crsp_m_cxyh_l_2 sp_in_edw_to_crsp_m_cxyh_l_2_1 sp_in_edw_to_crsp_m_cxyh_l_3 sp_in_edw_to_crsp_m_cxyh_l_4 sp_in_edw_to_crsp_m_cxyh_l_4_0 sp_in_edw_to_crsp_m_cxyh_l_5 sp_in_edw_to_crsp_m_cxyh_l_6 sp_in_edw_to_crsp_m_cxyh_l_6_0 sp_in_edw_to_crsp_m_cxyh_l_7 sp_in_edw_to_crsp_m_cxyh_l_8 sp_in_edw_to_crsp_m_cxyh_l_9 sp_inc_data_khjyd_1_1 sp_inc_data_khjyd_1_10 sp_inc_data_khjyd_1_11 sp_inc_data_khjyd_1_12 sp_inc_data_khjyd_1_13 sp_inc_data_khjyd_1_1_bak20201230 sp_inc_data_khjyd_1_2 sp_inc_data_khjyd_1_3 sp_inc_data_khjyd_1_4 sp_inc_data_khjyd_1_4_bak20210107 sp_inc_data_khjyd_1_5 sp_inc_data_khjyd_1_6 sp_inc_data_khjyd_1_7 sp_inc_data_khjyd_1_8 sp_inc_data_khjyd_1_9 sp_inc_data_khjyd_2_1 sp_inc_data_khjyd_2_10 sp_inc_data_khjyd_2_11 sp_inc_data_khjyd_2_12 sp_inc_data_khjyd_2_13 sp_inc_data_khjyd_2_2 sp_inc_data_khjyd_2_3 sp_inc_data_khjyd_2_4 sp_inc_data_khjyd_2_5 sp_inc_data_khjyd_2_6 sp_inc_data_khjyd_2_7 sp_inc_data_khjyd_2_8 sp_inc_data_khjyd_2_9 sp_inc_data_khjyd_3_1 sp_inc_data_khjyd_3_10 sp_inc_data_khjyd_3_11 sp_inc_data_khjyd_3_12 sp_inc_data_khjyd_3_13 sp_inc_data_khjyd_3_14 sp_inc_data_khjyd_3_15 sp_inc_data_khjyd_3_16 sp_inc_data_khjyd_3_17 sp_inc_data_khjyd_3_2 sp_inc_data_khjyd_3_3 sp_inc_data_khjyd_3_4 sp_inc_data_khjyd_3_5 sp_inc_data_khjyd_3_6 sp_inc_data_khjyd_3_7 sp_inc_data_khjyd_3_8 sp_inc_data_khjyd_3_9 sp_l_data_permission_tree_date sp_p_data_permission_tree_1 sp_p_data_permission_tree_date sp_rg_to_crsp_cds_1 sp_rg_to_crsp_cds_2 sp_rg_to_crsp_cds_3 sp_rg_to_crsp_jjl_jg_1 sp_rg_to_crsp_jjl_jg_2 sp_rg_to_crsp_jjl_time_1 sp_rg_to_crsp_jjl_time_11 sp_rg_to_crsp_jjl_zj_1 sp_sxc_detailed2_tmp sql_syan sql_syou sx_use sxc_commission_import sxc_commission_import_1 sxc_jjl_1_1 sxc_jjl_1_1_tmp sxc_jjl_1_2 sxc_jjl_1_3 sxc_jjl_2_1 sxc_jjl_2_1_tmp sxc_jjl_2_2 sxc_jjl_2_3 sxc_jjl_2_4 sxc_jjl_tmp sxfc_gxb_fc_sales_all_test sxfc_gxb_fc_sales_dn_comb sxfc_gxb_sales_fee1 sxfc_gxb_sales_fee2 sxfc_gxb_sales_fee3 sxfc_gxb_sales_qd sxfc_gxb_sales_qd_01 sxfc_gxb_sales_qd_02 sxfc_nonauto_cross_sales_qd sxfc_nonauto_cross_sales_qd_no_gxb sxfc_nonauto_cross_sales_qd_no_gxb_1 sxfc_nonauto_cross_sales_qd_no_gxb_2 sys0056rlt_t03_ticket_tmp sys0056rlt_u_account_tmp t_caf_menu_items_interface_day_log t_caf_menu_items_interface_unique t_caf_menu_items_role_day_access t_caf_menu_items_user_day_access t_caf_user_role_name t_dim_li_dep t_dim_li_emp_dep t_dim_li_emp_org t_dim_li_emp_org_all t_dim_li_emp_salever t_dim_li_org t_dim_li_org_all t_dim_p_org t_ods_manual_nip_xinchengyi t_rpt_showbase_orglist_1 t_rpt_showbase_orglist_2 t_sp_xbjb_detail_temp table_meta tbl_2_2_sp_inc_data_khjyd_1 tbl_2_2_sp_inc_data_khjyd_2 tbl_2_2_sp_inc_data_khjyd_3 tbl_2_2_sp_inc_data_khjyd_4 tbl_2_2_sp_inc_data_khjyd_5 tbl_2_2_sp_inc_data_khjyd_6 tbl_2_2_sp_inc_data_khjyd_7 tbl_2_2_sp_inc_data_khjyd_8 tbl_2_2_sp_inc_data_khjyd_9 tbl_3_sp_inc_data_khjyd_tbl_1_1 tbl_3_sp_inc_data_khjyd_tbl_1_10 tbl_3_sp_inc_data_khjyd_tbl_1_11 tbl_3_sp_inc_data_khjyd_tbl_1_12 tbl_3_sp_inc_data_khjyd_tbl_1_13 tbl_3_sp_inc_data_khjyd_tbl_1_14 tbl_3_sp_inc_data_khjyd_tbl_1_15 tbl_3_sp_inc_data_khjyd_tbl_1_2 tbl_3_sp_inc_data_khjyd_tbl_1_3 tbl_3_sp_inc_data_khjyd_tbl_1_4 tbl_3_sp_inc_data_khjyd_tbl_1_5 tbl_3_sp_inc_data_khjyd_tbl_1_6 tbl_3_sp_inc_data_khjyd_tbl_1_7 tbl_3_sp_inc_data_khjyd_tbl_1_8 tbl_3_sp_inc_data_khjyd_tbl_1_9 tbl_3_sp_inc_data_khjyd_tbl_1_date tbl_chexian_ruzhang tbl_chexian_sxc tbl_chexian_sxc_all_dim tbl_chexian_sxc_all_dim_mx tbl_chexian_zhengpan tbl_chexian_zhengpan_all_dim tbl_chexian_zhengpan_all_dim_mx tbl_sxc_chexian_qiandan tbl_sxc_chexian_qiandan_cx tbl_sxc_chexian_qiandan_cx_all tbl_sxc_chexian_qiandan_date tbl_sxc_chexian_qiandan_fgs tbl_sxc_chexian_qiandan_huizong tbl_sxc_chexian_qiandan_sxfgsname_all tbl_sxc_chexian_ruzhang tbl_sxc_chexian_ruzhang_cx tbl_sxc_chexian_ruzhang_cx_all tbl_sxc_chexian_ruzhang_fgs tbl_sxc_chexian_ruzhang_huizong tbl_sxc_chexian_ruzhang_sxfgsname tbl_sxc_chexian_ruzhang_sxfgsname_all tbl_zp_chexian_qiandan_huizong tbl_zp_chexian_ruzhang_huizong tbyh_import_data_kjgx_1 tbyh_import_data_kjgx_2 tbyh_import_data_kjgx_3 tbyh_sp_caf_cxxb_kjgx_2 tbyh_sp_caf_cxxb_kjgx_3 tbyh_sp_caf_cxxb_kjgx_4 tbyh_sp_caf_cxxb_kjgx_5 tbyh_sp_caf_cxxb_kjgx_6 tbyh_sp_custom_labeling_1 tbyh_sp_custom_labeling_2 tbyh_sp_custom_labeling_3 tbyh_sp_custom_labeling_3_1 tbyh_sp_custom_labeling_4 tbyh_sp_custom_labeling_4_1 tbyh_sp_custom_labeling_5 tbyh_sp_custom_labeling_5_1 tbyh_sp_custom_labeling_6 tbyh_sp_custom_labeling_7 tbyh_sp_custom_labeling_7_1 tbyh_sp_custom_labeling_8 tbyh_sp_custom_labeling_8_0 tbyh_sp_custom_labeling_8_1 tbyh_sp_custom_labeling_9_0 tbyh_sp_custom_labeling_9_1 tbyh_sp_custom_labeling_dateid temp_znmf_20200814 test_002 test_bd_p_ym test_big_1 test_ex_org_zgs test_khjy_to_crsp_d_cxba test_khjy_to_crsp_d_cxba_tbl test_khjy_to_crsp_d_ge test_khjy_to_crsp_d_ge_tbl test_khjy_to_crsp_d_gx test_khjy_to_crsp_d_gx_tbl test_khjy_to_crsp_d_gxge test_khjy_to_crsp_d_gxge_tbl test_khjy_to_crsp_d_xb1 test_khjy_to_crsp_d_xb1_tbl test_khjy_to_crsp_d_xb2 test_khjy_to_crsp_d_xb2_tbl test_oracle_1 test_pi_policy_1 tishu_20200930 tishu_20201031 tishu_20201208 tmp1 tmp2 tmp2_lm_fun_promotion_01 tmp2_lm_fun_promotion_02 tmp2_lm_fun_promotion_03 tmp2_lm_fun_promotion_03_1 tmp2_lm_fun_promotion_04 tmp2_lm_fun_promotion_04_01 tmp2_lm_fun_promotion_04_02 tmp2_lm_fun_promotion_05 tmp2_lm_fun_promotion_06 tmp2_lm_fun_promotion_07 tmp2_lm_fun_promotion_08 tmp_caf_achievements_2 tmp_caf_car_detailed_1 tmp_caf_car_detailed_2 tmp_caf_car_detailed_3 tmp_caf_car_detailed_4 tmp_caf_car_detailed_5 tmp_caf_customer_info_01 tmp_caf_customer_info_02 tmp_caf_customer_info_03 tmp_caf_customer_info_04 tmp_caf_customer_info_05 tmp_caf_customer_info_06 tmp_caf_cxbdtz tmp_caf_fc_policy_list_1 tmp_caf_fc_policy_list_2 tmp_caf_fcjb_detail_1 tmp_caf_fcjb_detail_2 tmp_caf_sx_detail_1 tmp_cross_cust_001 tmp_cross_cust_sx_001 tmp_crs_share_report_emp tmp_crs_share_report_l tmp_crsp_khfx_sxjb_cust tmp_crsp_khfx_sxjb_cust_59 tmp_crsp_khfx_sxjb_cust_59_f tmp_crsp_khfx_sxjb_cust_59_qs tmp_crsp_khfx_sxjb_cust_59_sum tmp_crsp_khfx_sxjb_cust_59_z tmp_crsp_khfx_sxjb_cust_59_zz tmp_crsp_khfx_sxjb_cust_60 tmp_crsp_khfx_sxjb_cust_60_f tmp_crsp_khfx_sxjb_cust_60_qs tmp_crsp_khfx_sxjb_cust_60_sum tmp_crsp_khfx_sxjb_cust_60_z tmp_crsp_khfx_sxjb_cust_60_zz tmp_crsp_khfx_sxjb_cust_f tmp_crsp_khfx_sxjb_cust_qs tmp_crsp_khfx_sxjb_cust_sum tmp_crsp_khfx_sxjb_cust_z tmp_crsp_khfx_sxjb_cust_zz tmp_cust_jy_001 tmp_cust_jy_002 tmp_cust_jy_003 tmp_cxwy_edw_p tmp_cxwy_edw_p_1 tmp_cxwy_edw_p_2 tmp_detail tmp_dim_dep1 tmp_dim_dep2 tmp_dim_dep3 tmp_dim_dep_all3 tmp_dim_intorg tmp_dim_intorg_all tmp_dim_li_emp_org_all_new2 tmp_dim_li_emp_org_all_new3 tmp_dim_li_emp_org_all_new4 tmp_dim_li_emp_org_all_new5 tmp_dim_li_emp_salever1 tmp_dim_li_emp_salever1_1 tmp_dim_li_emp_salever2 tmp_dim_li_emp_salever3 tmp_dim_li_emp_salever4 tmp_dim_org2 tmp_dim_org3 tmp_dim_org4 tmp_dim_org_all2 tmp_dim_org_all3 tmp_dim_org_all4 tmp_dim_rlship tmp_dim_rlship_all tmp_emp_organ tmp_emp_organ_01 tmp_emp_organ_02 tmp_emp_organ_03 tmp_emp_organ_04 tmp_emp_organ_1 tmp_emp_organ_2 tmp_emp_organ_3 tmp_give_care_for_detail_01 tmp_give_care_for_detail_02 tmp_give_care_for_detail_03 tmp_give_care_for_detail_04 tmp_give_care_for_detail_05 tmp_give_care_for_detail_06 tmp_ids_auto_agreement_request_t tmp_ids_auto_agreement_t tmp_ids_auto_claim_folder_t tmp_ids_auto_coverage_component_t tmp_ids_fc_vehicle tmp_ids_motorised_vehicle_t tmp_ids_to_crsp_2519 tmp_ids_to_crsp_d2500 tmp_import_date_cxxb_1 tmp_initial_premium_table tmp_inter_org tmp_inter_org_1 tmp_inter_org_with_not_yu tmp_inter_org_zhuanyuan_01 tmp_kjgx_to_crsp_cds_meeting tmp_kjgx_to_crsp_cds_meeting_1 tmp_l_01 tmp_l_emp_1 tmp_l_org_tree tmp_ld_prem_new_02 tmp_ld_prem_new_03_2 tmp_ld_prem_new_03_3 tmp_lm_fun_promotion_01 tmp_lm_fun_promotion_02 tmp_lm_fun_promotion_03 tmp_lm_fun_promotion_03_1 tmp_lm_fun_promotion_04 tmp_lm_fun_promotion_04_01 tmp_lm_fun_promotion_04_02 tmp_lm_fun_promotion_05 tmp_lm_fun_promotion_06 tmp_lm_fun_promotion_07 tmp_non_cross_cust_001 tmp_non_cross_cust_cx_001 tmp_non_cross_cust_cx_002 tmp_non_cross_cust_cx_003 tmp_non_cross_cust_cx_004 tmp_non_cross_cust_cx_005 tmp_non_cross_cust_cx_0055 tmp_non_cross_cust_cx_006 tmp_non_cross_cust_cx_007 tmp_non_cross_cust_cx_0077 tmp_non_cross_cust_cx_007_1 tmp_non_cross_cust_cx_008 tmp_non_cross_cust_cx_009 tmp_non_cross_cust_cx_010 tmp_non_cross_cust_cx_011 tmp_non_cross_cust_cx_012 tmp_non_cross_cust_cx_013 tmp_non_cross_cust_cx_014 tmp_non_cross_cust_cx_077 tmp_non_cross_cust_cx_policy_all tmp_non_cross_cust_cx_pre_all tmp_order_list_1 tmp_order_list_2 tmp_order_list_3 tmp_order_list_4 tmp_org_change tmp_org_tree tmp_org_tree_del tmp_orphan_1 tmp_orphan_2 tmp_orphan_distribution tmp_orphan_distribution_01 tmp_orphan_distribution_01_1 tmp_orphan_distribution_02 tmp_orphan_distribution_03 tmp_orphan_distribution_04 tmp_orphan_distribution_05 tmp_orphan_distribution_06 tmp_orphan_distribution_07 tmp_orphan_distribution_1 tmp_orphan_distribution_2 tmp_orphan_reassignment_1 tmp_orphan_reassignment_2 tmp_orphan_reassignment_3 tmp_p10ids_empcommi tmp_p_performance tmp_p_performance_chg tmp_pi_noauto_lessperson_toubao tmp_pi_policy_1 tmp_pi_policy_2 tmp_pi_policy_3 tmp_pi_policy_4 tmp_pi_policy_6 tmp_pi_policy_account tmp_pi_policy_account_1 tmp_pi_policy_emp1 tmp_pi_policy_emp1_x tmp_pi_policy_emp2 tmp_pi_policy_emp3 tmp_pi_policy_emp3_1 tmp_pi_policy_emp3_2 tmp_pi_policy_emp3_3 tmp_pi_policy_emp3_4 tmp_pi_policy_emp3_5_1 tmp_pi_policy_emp3_5_2 tmp_pi_policy_emp3_5_3 tmp_pi_policy_emp3_6_1 tmp_pi_policy_emp3_6_2 tmp_pi_policy_emp_except tmp_pi_policy_extend tmp_pi_policy_full_1 tmp_pi_policy_full_2 tmp_pi_policy_full_3 tmp_pi_policy_full_4 tmp_pi_policy_homeins1 tmp_pi_policy_homeins2 tmp_pi_policy_homeins3 tmp_pi_policy_list tmp_pi_policy_list_homeapp1_1 tmp_pi_policy_list_homeapp2 tmp_pi_policy_list_homeapp3 tmp_pi_policy_premium tmp_pi_policy_premium_01 tmp_pi_policy_renewal tmp_rg_to_crsp_yj tmp_send_care_01 tmp_send_care_02 tmp_send_care_03 tmp_send_care_04 tmp_send_care_05 tmp_t58 tmp_t59 tmp_telsale_to_crsp_etc tmp_work_mnoth tmp_work_mnoth_1 tmp_xg_to_crsp_premium_ora tmp_ztj two_taxes_syan_1 two_taxes_syan_10 two_taxes_syan_2 two_taxes_syan_3 two_taxes_syan_4 two_taxes_syan_5 two_taxes_syan_6 two_taxes_syan_8 two_taxes_syan_9 two_taxes_syou_1 two_taxes_syou_10 two_taxes_syou_2 two_taxes_syou_3 two_taxes_syou_4 two_taxes_syou_5 two_taxes_syou_6 two_taxes_syou_8 two_taxes_syou_9 v3_emp_tmp v5_emp_tmp v_p13account_detail xg_to_crsp_premium xg_to_crsp_premium_bak xg_to_crsp_premium_cx_1_1 xg_to_crsp_premium_cx_1_2 xg_to_crsp_premium_cx_2 xg_to_crsp_premium_cx_2_new_standard xg_to_crsp_premium_cx_3 xg_to_crsp_premium_cx_new_standard xg_to_crsp_premium_ora xg_to_crsp_premium_sx_1_1 xg_to_crsp_premium_sx_1_2 xg_to_crsp_premium_sx_2 xg_to_crsp_premium_sx_2_1 xg_to_crsp_premium_sx_3 xg_to_crsp_premium_tmp_1 xll_001 xll_01 xll_03 xll_04 xll_05 xll_1 xll_auto_insurance_allot_cust_01 xll_auto_insurance_allot_cust_02 xll_auto_insurance_allot_cust_03 xll_auto_insurance_allot_cust_04 xll_auto_insurance_allot_cust_06 xll_bus_report_jb_2 xll_cds_bus_report_car_jb xll_cxqd_01 xll_cxqd_02 xll_cxqd_03 xll_cxqd_04 xll_kongyuyu_01 xll_kongyuyu_02 xll_kongyuyu_03 xll_linchen_01 xll_linchen_02 xll_tmp xll_tmp1 xll_tmp_01 xll_tmp_02 xll_tmp_03 xll_tmp_04 xll_tmp_05 xll_tmp_06 xll_tmp_07 xll_ym_01 xll_ym_01as xll_zhaoyunfang_01 xll_zhaoyunfang_201901 xll_zhaoyunfang_201902 xll_zhaoyunfang_201903 xll_zhaoyunfang_201904 xll_zhaoyunfang_201905 xll_zhaoyunfang_201906 xll_zhaoyunfang_201907 xll_zhaoyunfang_201908 xll_zhaoyunfang_201909 xll_zhaoyunfang_2019w xll_zhaoyunfang_2019x xll_zhaoyunfang_2019y xll_zhaoyunfang_2019z xll_zhaoyunfang_202001 xll_zhaoyunfang_202002 xll_zhaoyunfang_202003 xll_zhaoyunfang_202004 xll_zhaoyunfang_20200417 xll_zhaoyunfang_20200417_1 xll_zhaoyunfang_20200417_2 xll_zhaoyunfang_20200417_all xll_zhaoyunfang_20200418 xll_zhaoyunfang_20200418_01 xll_zhaoyunfang_20200418_02 xll_zhaoyunfang_20200418_end xll_zhaoyunfang_202005 xll_zhaoyunfang_202006 xll_zhaoyunfang_202007 xll_zhaoyunfang_202008 xll_zhaoyunfang_202009 xll_zhaoyunfang_2020w xll_zhaoyunfang_2020x xll_zhaoyunfang_2020y xll_zhaoyunfang_2020z xll_zhaoyunfang_fcgxb_2 xll_zhaoyunfang_fcgxb_20 xll_zhaoyunfang_fcgxb_3 xll_zhaoyunfang_fcgxb_30 xll_zhaoyunfang_fcgxb_4 xll_zhaoyunfang_fcgxb_5 xll_zhaoyunfang_fcgxb_6 xll_zhaoyunfang_fcgxb_rz xll_zhaoyunfang_fcgxb_test xll_zhejiang_1 xll_zhejiang_2 xll_zhejiang_3 xll_zhejiang_4 xll_znmf_jb_1 yj_date zhuanyuan_jg_01 zhuanyuan_jg_02 zhuanyuan_jg_03 zhuanyuan_jg_04 zhuanyuan_jg_05 zhuanyuan_jg_f_01 zhuanyuan_jg_f_02 zhuanyuan_jg_z_01 zhuanyuan_jg_z_02 zhuanyuan_jg_z_04 zhuanyuan_jg_z_05 zhuanyuan_jg_zy_01 zhuanyuan_jg_zy_02 zhuanyuan_jg_zz_01 zhuanyuan_jg_zz_02 zhuanyuan_jg_zz_04 zhuanyuan_jg_zz_05 zongrenli zongrenli_13_24 zongrenli_24 zongrenli_7_12 zongrenli_result zp_caf_noncar_long_detailed_0807 zp_caf_noncar_long_detailed_1 zp_gxb_act_report_202007 zp_gxb_act_report_202007_1 zp_gxb_act_report_202007_result zp_gxb_act_report_202007_result_1 zp_riskcon_tmp_20201025 zp_riskcon_tmp_20201025_1 zp_riskcon_tmp_20201025_2 zp_riskcon_tmp_20201025_3 zp_sp_sxfc_detailed2_tmp'
# table_names='rg_to_crsp_jj_time'
# table_names="gxb_yu_report_0"db_name="a2_normal"
table_names="a2_check_flag a2_cpic_boss a2_cpic_boss_all a2_cpic_boss_bak_20210113 a2_cpic_boss_test a2_cpic_gold_coin a2_cpic_gold_coin_20210108 a2_cpic_gold_coin_all a2_cpic_gold_coin_bak_20201209 a2_cpic_gold_coin_boss a2_cpic_gold_coin_flag a2_cpic_gold_coin_result a2_cpic_gold_coin_zl a2_cpic_gold_policy auto_insurance auto_insurance_all auto_insurance_allot_cust auto_insurance_allot_cust_new auto_insurance_apply_auto auto_insurance_apply_mysql auto_insurance_apply_mysql06 auto_insurance_edw auto_insurance_edw_xt auto_insurance_edw_xt_temp auto_insurance_extend auto_insurance_extend_all auto_insurance_extend_edw auto_insurance_extend_tocms auto_insurance_extend_tocms_shzmq auto_insurance_fromct auto_insurance_fromct_all auto_insurance_fromcta_all auto_insurance_partition auto_insurance_partition_001 auto_insurance_partition_002 auto_insurance_partition_003 auto_insurance_partition_all auto_insurance_partition_issued auto_insurance_partition_issued_tmp auto_insurance_partition_old auto_insurance_partition_temp auto_insurance_tocms auto_insurance_tocms_all auto_insurance_tocms_shzmq auto_insurance_tocms_test auto_insurance_tocms_tmp caf_achievements_1 caf_achievements_2 caf_achievements_companytime caf_achievements_companytime1 caf_achievements_rank caf_bdxb_report caf_bdxb_report_test caf_billorgconfig_table caf_car_detailed caf_car_detailed_bakl caf_car_detailed_tmp caf_car_enjoyment_detail caf_car_long_detailed caf_car_long_detailed_bak2 caf_car_long_detailed_bakl caf_car_long_detailed_tmp caf_cardimension_table caf_cardimension_table_data_backup caf_claim_insurance caf_claim_insurance_20200828 caf_claim_insurance_cust caf_commissioner_cx caf_commissioner_track caf_creplaces_empname caf_creplaces_table caf_creplaces_table_776 caf_customer_info caf_cx_healthinsur_daily_table caf_cx_healthinsur_daily_table_01 caf_cx_healthinsur_daily_table_01_text caf_cx_healthinsur_daily_table_02 caf_cx_healthinsur_daily_table_03 caf_cx_healthinsur_daily_table_04 caf_cx_healthinsur_daily_table_05 caf_cx_healthinsur_daily_table_result caf_cx_healthinsur_table caf_cx_inquiry caf_cxjb_kjgx_new_daily caf_cxxb_kjgx_daily caf_cxxbjb_cjc_new_daily caf_date_table caf_date_table_property caf_date_table_test caf_emp_cx_detail caf_etc_detailed caf_fc_detailed caf_fc_long_detailed caf_orphan_agent caf_orphan_commonsuccessors caf_orphan_distribution caf_orphan_distribution_1 caf_orphan_order caf_orphan_qqrate_sum caf_orphan_reassignment caf_p_customer_list caf_policy_xb_report caf_property_carsales_table caf_salesboard caf_salesboard_0407 caf_salesboard_20 caf_salesboard_20200715 caf_salesboard_20200828 caf_salesboard_20200925 caf_salesboard_20201113 caf_salesboard_20201116 caf_salesboard_20201117 caf_salesboard_20201119 caf_salesboard_20201120 caf_salesboard_20201231 caf_salesboard_20210125 caf_salesboard_20210126 caf_salesboard_20210127 caf_salesboard_20210128 caf_salesboard_20210128_2 caf_salesboard_20210128_3 caf_salesboard_30 caf_salesboard_bak0314 caf_salesboard_bak20200815_0113 caf_salesboard_bak20200818_1145 caf_salesboard_bak20201130 caf_salesboard_bak20201202 caf_salesboard_bak20201216 caf_salesboard_bak20201231 caf_salesboard_bak20210121 caf_salesboard_gxb caf_salesboard_map caf_salesboard_map_20201231 caf_salesboard_map_20210125 caf_salesboard_map_20210126 caf_salesboard_map_20210127 caf_salesboard_map_20210128 caf_salesboard_map_20210128_2 caf_salesboard_map_20210128_3 caf_salesboard_map_30 caf_salesboard_map_bak20210121 caf_salesboard_map_city caf_salesboard_map_rename20210121 caf_salesboard_rename20201130 caf_salesboard_rename20201201 caf_salesboard_rename20201201_01 caf_salesboard_rename20201202 caf_salesboard_rename20201216 caf_salesboard_rename20201221 caf_salesboard_rename20201231 caf_salesboard_rename20210121 caf_sx_healthinsur_daily_table caf_sx_healthinsur_daily_table_02 caf_sx_healthinsur_daily_table_02_lastyear caf_sx_healthinsur_daily_table_03 caf_sx_healthinsur_daily_table_04 caf_sx_healthinsur_daily_table_05 caf_sx_healthinsur_daily_table_06 caf_sx_healthinsur_daily_table_06_1 caf_sx_healthinsur_daily_table_06_tmp caf_sx_healthinsur_table caf_sxc_mx_report caf_sxc_mx_report_2017 caf_sxc_mx_report_qd caf_sxc_mx_report_qd_2017 caf_sxc_mx_report_qd_test caf_sxc_mx_report_test caf_sxc_promotion_1 caf_sxc_promotion_tmp_1 caf_sxc_promotion_tmp_2 caf_sxc_promotion_tmp_3 caf_sxc_promotion_tmp_4 caf_sxc_promotion_tmp_zimaoqu caf_sxc_report caf_sxc_report_2 caf_sxc_report_3 caf_sxfc_mx_report_1 caf_tax_extension caf_tax_extension_old caf_tax_preference caf_tax_preference_old caf_tbyh_daily caf_tbyh_jbcxqd caf_tbyh_jbcxqd_tmp caf_tbyh_jbdaily caf_tbyh_jbdaily_tmp caf_tbyh_m_cxyh caf_tbyh_m_cxyh_l caf_tbyh_m_cxyh_p caf_tbyh_unlock_custom caf_tbyh_unlock_custom_mysql caf_tbyh_wdsq caf_tbyh_xfqd car_life_share_customer_info car_life_share_customer_info_01 car_life_share_customer_info_02 car_life_share_customer_info_03 car_life_share_customer_info_04 car_life_share_customer_info_05 car_life_share_customer_info_05_tmp car_life_share_customer_info_05_tmp_01 car_life_share_increment_people car_life_share_increment_policy car_life_share_policy_info car_life_share_policy_info_01 car_life_share_policy_info_02 car_life_share_policy_info_04 car_life_share_policy_info_05 car_life_share_policy_info_06 car_life_share_policy_info_06_bak car_life_share_policy_info_06_stock car_life_share_policy_info_07 car_life_share_policy_info_08 car_life_share_policy_info_09 car_life_share_policy_info_10 car_life_share_policy_info_11 car_life_share_policy_info_12 car_life_share_policy_info_13 car_life_share_policy_info_all car_life_share_policy_info_long car_life_share_policy_info_result cds_bus_ql_report cds_bus_ql_report_edition cds_bus_ql_report_edition_3 cds_bus_ql_report_edition_4 cds_bus_ql_report_edition_5 cds_bus_ql_report_hx_hjx_bak cds_bus_ql_report_mf_policy_hjx_bak cds_bus_ql_report_unit_yuan cds_bus_report cds_bus_report_hx_hjx_bak cds_bus_report_mf_policy_hjx_bak cds_bus_report_unit_yuan cds_meeting_report cl_relation con_cj_annuity con_cj_annuity_last con_cjaty_corp con_cjaty_corp_last cron crs_export_part1 crs_export_policy crs_insurance_allot_detail crs_report_auto_l2 crs_report_auto_l3 crs_report_auto_l4 crs_report_auto_l_emp crs_share_report_emp crs_share_report_l crs_tmp_customersa_change crs_tmp_customersa_l crs_tmp_p_customersa_sign_m crsp_cxge_fpmx crsp_cxgx_fpmx crsp_cxgx_fpmx_inc crsp_khfx_sxjb_cust crsp_khfx_sxjb_cust_20200828 crsp_khfx_sxjb_date crsp_to_khjy_cxyh crsp_to_khjy_cxyh_tmp crsp_to_kjgx_cxwy crsp_to_kjgx_cxwy_xf crsp_to_kjgx_cxyh crsp_to_kjgx_etc cust customers_stats customers_stats_col customers_stats_combine customers_stats_combine_u customers_stats_final_202005 customers_stats_final_u customers_union cx_org dim_classcode_convert dim_day dim_day_20009 dim_day_gxb dim_org_salesboard dim_org_salesboard_bak edw_tbyh_cxyh_c_01 edw_tbyh_cxyh_c_02 edw_tbyh_cxyh_c_03 edw_tbyh_cxyh_c_04 edw_tbyh_cxyh_c_05 edw_tbyh_cxyh_c_07 edw_tbyh_cxyh_c_08_01 edw_tbyh_cxyh_c_08_02 edw_tbyh_cxyh_c_15 edw_to_crsp_cxxb edw_to_crsp_m_cxyh edw_to_crsp_m_cxyh_c edw_to_crsp_m_cxyh_c_his edw_to_crsp_m_cxyh_c_inc edw_to_crsp_m_cxyh_l edw_to_crsp_m_cxyh_p edw_to_m4_l_policy_list edw_to_m4_p_policy_list edw_to_m4_p_policy_list_bef1 edw_to_m4_p_policy_list_bef2 edw_to_m4_p_policy_list_test empjob_a2 empjob_shouxian exp_party_1 exp_party_2 export_sgh_disanceng fc_approve_task gdrg_to_crsp_csys gdrg_to_crsp_csys2 give_care_for_detail give_care_for_detail_03 group_kpi_list group_kpi_list_backup gxb gxb_act_manage_report gxb_act_mge_report gxb_act_report gxb_actual_report gxb_bus_report gxb_bus_report_0 gxb_bus_report_20201216 gxb_bus_report_bak gxb_bus_report_bak20200913 gxb_bus_report_test gxb_channel_report gxb_yu_report gxb_yu_report_bak20200913 gxb_yu_report_channel_tmp henan_polic_con houjiaxin_test houjiaxin_test_02 houjiaxin_test_03 hubei_kjgx_car_amount_01 hubei_kjgx_car_amount_02 hubei_policyno ids_party_t_1105 ids_to_bdxb_2519 ids_to_bdxb_2519_test ids_to_crsp_2518 ids_to_crsp_2519 ids_to_crsp_2519_inc ids_to_crsp_2519_inc_test ids_to_crsp_2519_test ids_to_crsp_shbf insurance inter_org inter_org_0527 inter_org_1027 inter_org_tbyh inter_org_tmp_1 inter_org_zhuanyuan jkx_check jkx_product_list jujirenli jujirenli2 jujizongrenli jujizongrenli2 jx_nonauto_policy_all_01 jx_nonauto_policy_mx_01 jx_nonauto_policy_mx_03 jx_nonauto_policy_mx_04 jxxs_nonauto_cross_sales_day_0 jxxs_nonauto_cross_sales_day_1 jxxs_nonauto_cross_sales_day_2 jxxs_nonauto_cross_sales_day_99 jxxs_nonauto_cross_sales_day_tmp_1 jxxs_nonauto_cross_sales_day_tmp_22 jxxs_nonauto_cross_sales_day_tmp_33 jxxs_nonauto_cross_sales_day_tmpsx_2 jxxs_nonauto_cross_sales_day_tmpsx_3 jxxs_nonauto_cross_sales_day_tmpsx_4 kejing_ok khjy_to_crsp_d_cxba_tbl khjy_to_crsp_d_ge_tbl khjy_to_crsp_d_ge_tbl_bak20210115 khjy_to_crsp_d_gx_tbl khjy_to_crsp_d_gx_tbl_bak20210114 khjy_to_crsp_d_gx_tbl_rename20210115 khjy_to_crsp_d_gxge_tbl khjy_to_crsp_d_xb1_tbl khjy_to_crsp_d_xb2_tbl khjy_to_crsp_ge khjy_to_crsp_jb_new kjgx_car_emp_detail kjgx_cross_sale_issue kjgx_cross_sale_number_of_people kjgx_cross_sale_number_of_people_20201120 kjgx_cross_sale_promotion_coverage kjgx_cross_sale_promotion_coverage_20201120 kjgx_cross_sale_target_usage kjgx_cross_sale_target_usage_20201120 kjgx_mb_activity_info_t59_zp1 kjgx_mb_activity_info_t59_zp2 kjgx_mb_activity_info_t59_zp2019 kjgx_mb_activity_info_t59_zp2_2019 kjgx_mb_activity_info_t59_zp2_2019_1 kjgx_mb_activity_info_t67_zp1 kjgx_mb_activity_info_t67_zp2 kjgx_sgh_daily_report_cx kjgx_sgh_daily_report_sx kjgx_sgh_report_01 kjgx_sgh_report_02 kjgx_sgh_report_03 kjgx_sgh_report_04 kjgx_sgh_report_05 kjgx_sgh_report_06 kjgx_sgh_report_07 kjgx_sgh_report_08 kjgx_sgh_report_funnel kjgx_sgh_report_funnel_01 kjgx_sgh_report_funnel_02 kjgx_sgh_report_funnel_03 kjgx_sgh_report_funnel_result_01 kjgx_sgh_report_funnel_result_02 kjgx_sgh_report_tmp_01 kjgx_sgh_report_tmp_02 kjgx_sgh_report_tmp_03 kjgx_sgh_report_tmp_04 kjgx_sgh_report_tmp_05 kjgx_sgh_report_tmp_06 kjgx_sgh_report_tmp_07 kjgx_sgh_report_tmp_08 kjgx_tmp kjgx_tmp1 kjgx_tmp2 kjgx_tmp3 kjgx_tmp_bak kjgx_to_crsp_cxyh kjgx_to_crsp_cxyh_cd kjgx_to_crsp_d_rwfp l_data_permission_tree l_kpi_list l_policy_info_l2 l_policy_info_l3 lb_qyjb_sj_detail_all life_insurance_achievement_org life_insurance_achievement_org_bak20201229 life_insurance_achievement_org_tmp life_insurance_achievement_org_tmp_1 life_policy_list_com life_policy_list_not_exist life_policy_list_same local_ids_auto_claim_folder_t local_nonauto_cross_sales_day_bf local_nonauto_cross_sales_day_bf1 lr_m_rpt_096_01 lr_m_rpt_096_02 lr_m_rpt_096_03 lr_m_rpt_096_04 manager_id_filter manager_id_list mb_znmf_meeting_id_history md5_id_no_houjiaxin mfhx_policy nonauto_health_premium ods_l_policy_cust_4 ods_life_policy_cust_1 ods_life_policy_cust_2 ods_life_policy_cust_2_1 ods_life_policy_cust_3_1 ods_life_policy_cust_3_2 ods_life_policy_cust_3_3 ods_life_policy_cust_3_4 ods_life_policy_cust_3_5 ods_life_policy_cust_4 ods_life_policy_cust_5 old_pt09dacrsp_ncsm_daybf org_l_change org_l_change_20200828 p10ids_riskclass_src2 p10ids_riskcon_03 p_data_permission_tree p_kpi_list p_policy_info_l1 p_policy_info_l2 policy_ax_cust policy_ax_cust_last policy_group_cust policy_group_cust_last policy_group_cust_team policy_group_cust_team_last policy_group_cust_valid policy_group_cust_valid_last policy_group_custt_noclasscode policy_jkx_cust policy_jkx_cust_last policy_jkx_cust_now policy_jkx_cust_team policy_jkx_cust_team_last policy_life_cust policy_life_cust_2 policy_life_cust_5 policy_life_cust_6 policy_life_cust_cross policy_life_cust_family policy_life_cust_familyinfo policy_life_cust_familyinfo2 policy_life_cust_familyinfo_pid policy_life_cust_last policy_life_cust_mq_2 policy_life_cust_mq_classcode_2 policy_life_cust_mq_noclasscode_2 policy_life_cust_no_classcode policy_life_cust_noclasscode policy_life_cust_noclasscode_last policy_life_cust_team policy_life_cust_team_2 policy_life_cust_team_family policy_life_cust_team_family_2 policy_life_cust_team_last policy_life_cust_team_noclasscode_last policy_life_cust_team_p policy_life_team_cust_noclasscode policy_prop_cust policy_prop_cust_2 policy_prop_cust_last policy_prop_cust_no policy_prop_cust_nobranch policy_prop_cust_party policy_prop_cust_party2 policy_prop_cust_test policy_prop_cust_val policy_prop_exist policy_renli product_business_recommendation_report product_business_recommendation_report_ql product_business_recommendation_report_ql_stock product_business_recommendation_report_stock pt09dacrsp_ncsm pt09dacrsp_ncsm_daybf pt09dacrsp_ncsm_daybf_1 pt09dacrsp_ncsm_daybf_bak pt09dacrsp_ncsm_daybf_bak_20201120 pt09dacrsp_ncsm_daybf_fc pt09dacrsp_ncsm_daybf_gxb pt09dacrsp_ncsm_daybf_kenian_20201124 pt09dacrsp_ncsm_daybf_tmp pt09dacrsp_ncsm_daybf_tmp2 pt09dacrsp_ncsm_daybf_tmp3 pt09dacrsp_ncsm_mysql pt09dacrsp_ncsm_tmp pub_branch_province qyjb_bdmx_report qyjb_bmmx_report r88_alldata r88_alldata_20210127 r88_alldata_bak r88_alldata_hjx r88_alldata_hjx_new r88_hisdata rabbitmq_consumer_message rabbitmq_consumer_message_tishu rabbitmq_message rabbitmq_message_masaike rabbitmq_message_tishu rabbitmq_message_tishu_431 rel_pty_con_exist renli_20201023 renli_20201023_2 rg_to_crsp_yj rg_to_crsp_yj_tmp rms_policy_detail rms_policy_detail_20201118 rms_policy_detail_20201119 rms_policy_detail_20201122 rpt_ams_tjb_income_tb rpt_ams_tjb_income_tb2 rpt_ams_tjb_income_tb_tmp sales_business_promotion_tmp_1 sales_business_promotion_tmp_2 sales_business_promotion_tmp_3 sales_business_promotion_tmp_4 sales_business_promotion_tmp_5 sales_business_promotion_tmp_6 sales_business_promotion_tmp_7 sales_business_promotion_tmp_99 sanzhe_amout sanzhe_amout_2019 sanzhe_count sanzhe_policy sanzhe_policy_2019 sanzhe_policy_baoe sanzhe_policy_baoe_2019 sanzhe_policy_classcode send_care_v1_distribution_customer_right_info send_care_v2_gjgx_acception_info send_care_v3_gjgx_distribution_info send_care_v4_gjgx_display_info send_care_v5_gjgx_contact_info send_care_v5_gjgx_contact_info_daily send_care_v6_benefit_receive_info send_care_v6_benefit_receive_info_daily send_care_v7_benefit_receive_and_verify_info send_care_v7_benefit_receive_and_verify_info_daily send_care_v8_benefit_use_info send_care_v8_benefit_use_info_daily share_kpi_list_l share_kpi_list_l_20200828 share_kpi_list_p share_kpi_list_p_tmp short_message_policy_tmp siji_organ sms_message_everyday_885 sms_message_everyday_885_0002 sms_message_everyday_885_kjgx sms_message_everyday_885_tmp2 sms_message_report sms_message_report_01 sms_message_report_02 sms_message_report_885 sms_message_report_885_01 sms_message_report_885_chat sms_message_time_885 sms_send_customer sms_send_customer_01 sms_send_customer_01_0915 sms_send_customer_02 sms_send_customer_02_0915 sms_send_customer_03 sms_send_customer_04 sms_send_customer_05 sms_send_customer_06 sms_send_customer_07 sms_send_customer_0916 sms_send_customer_0916_01 sms_send_customer_0916_02 sms_send_customer_0916_03 sms_send_customer_0916_04 sms_send_customer_0916_05 sms_send_customer_0916_06 sms_send_customer_0916_07 sms_send_customer_0916_director sms_send_customer_0916_tel sms_send_customer_431 sms_send_customer_431_01 sms_send_customer_431_02 sms_send_customer_431_03 sms_send_customer_431_04 sms_send_customer_431_05 sms_send_customer_431_06 sms_send_customer_431_07 sms_send_customer_431_08 sms_send_customer_431_20210110 sms_send_customer_431_tmp sms_send_customer_director sms_send_customer_start_time sms_send_customer_tel sms_send_customer_zzgs stg_nonauto_cross_sales_month sxc_commission_import sxc_commission_search sxc_commission_search_detail sxc_emp_report_actual sxc_emp_report_actual_amount sxc_emp_report_actual_amount_01 sxc_emp_report_actual_amount_01_tmp sxc_emp_report_actual_amount_01_tmp2 sxc_emp_report_actual_amount_02 sxc_emp_report_actual_amount_02_tmp sxc_emp_report_actual_amount_03 sxc_emp_report_actual_auto sxc_emp_report_actual_nonauto sxc_emp_report_sign sxc_emp_report_sign_amount sxc_emp_report_sign_amount_01 sxc_emp_report_sign_amount_01_tmp sxc_emp_report_sign_amount_01_tmp2 sxc_emp_report_sign_amount_02 sxc_emp_report_sign_amount_02_tmp sxc_emp_report_sign_amount_03 sxc_emp_report_sign_auto sxc_emp_report_sign_auto_01 sxc_emp_report_sign_nonauto sxc_emp_report_sign_nonauto_01 sxc_emp_tmp sxc_emp_tmp_01 sxc_emp_tmp_tmp sxc_emp_tmp_tmp2 sxc_jjl sxc_sales_business_promotion sxc_sales_business_promotion_20200828 sxjk_new_record_jjl sxjk_new_record_jjl_20201021 t0402 t1_jg t_caf_cx_inquiry t_caf_log t_caf_log_bak t_caf_log_bak_2 t_caf_log_filter t_cfg_attr t_cross_sale_noncar_policy_detail t_crsp_cxgx_fpmx_date t_dim_li_dep t_dim_li_dep_all_bef1 t_dim_li_dep_all_bef2 t_dim_li_emp_dep t_dim_li_emp_dep_all t_dim_li_emp_dep_all_bef1 t_dim_li_emp_dep_all_bef2 t_dim_li_emp_dep_all_new t_dim_li_emp_dep_all_new_bef1 t_dim_li_emp_dep_all_new_bef2 t_dim_li_emp_org t_dim_li_emp_org_all t_dim_li_emp_org_all_bef1 t_dim_li_emp_org_all_bef2 t_dim_li_emp_org_all_new t_dim_li_emp_org_all_new_bef1 t_dim_li_emp_org_all_new_bef2 t_dim_li_emp_org_bef1 t_dim_li_emp_org_bef2 t_dim_li_emp_org_new t_dim_li_emp_org_new_bef1 t_dim_li_emp_org_new_bef2 t_dim_li_emp_salever t_dim_li_emp_salever2 t_dim_li_emp_salever_bef1 t_dim_li_emp_salever_bef2 t_dim_li_emp_salever_test1 t_dim_li_org t_dim_li_org_all t_dim_li_org_all_bef1 t_dim_li_org_all_bef2 t_dim_li_org_bef1 t_dim_li_org_bef2 t_dim_p_org t_dim_p_org_bef1 t_dim_p_org_bef2 t_exp_to_mis_sharenum t_log t_log_bak t_log_temp t_ods_auto_allot_cust t_ods_auto_allot_cust_0304 t_ods_manual_nip t_ods_manual_nip_20200618 t_ods_manual_nip_bak t_ods_manual_nip_bak20210202 t_pi_policy_list t_s_p10ids_phone t_showbase_orglist t_tds_fc_caf_salesboard t_tds_fc_caf_salesboard_hjx t_tds_fc_caf_salesboard_hjx2 t_tds_fc_caf_salesboard_hjx3 t_tds_fc_caf_salesboard_hjx4 t_tds_fc_caf_salesboard_hjx5 t_tds_fc_caf_salesboard_test t_tds_fc_caf_salesboard_tmp table_log_stock table_log_stock_0917 table_meta table_meta_result tai_coin_event tai_coin_report_01 tai_coin_report_01_tmp tai_coin_report_02 tai_coin_report_02_renli_01 tai_coin_report_02_renli_02 tai_coin_report_02_renli_03 tai_coin_report_02_tmp tai_coin_report_02_tmp_01 tai_coin_report_02_tmp_02 tai_coin_report_02_tmp_03 tai_coin_report_03 tai_coin_report_03_fgs tai_coin_report_03_tmp tai_coin_report_03_zgs tai_coin_report_03_zzgs tbl_lbh_abandoned_items tbl_lbh_policy_elec tbl_lbh_policy_elec_0709 tbl_lbh_policy_elec_0722 tbl_lbh_policy_elec_0814 tbl_lbh_policy_elec_group tbl_lbh_policy_elec_group_0709 tbl_lbh_policy_elec_group_0722 tbl_lbh_policy_elec_group_0814 tbl_lbh_policy_fail tbl_lbh_policy_fail_0814 tbl_lbh_policy_kjgx tbl_lbh_policy_kjgx_0814 tbl_lbh_policy_kjgx_0814_org tbl_lbh_policy_kjgx_bak tbl_lbh_policy_kjgx_bak71 tbl_lbh_policy_kjgx_tet tbl_lbh_policy_now tbl_lbh_policy_now_0814 tbl_lbh_qd_report tbl_lbh_qd_report_01 tbl_lbh_qd_report_01_temp20200814 tbl_lbh_qd_report_01_temp2020814 tbl_lbh_qd_report_base tbl_lbh_qd_report_base_temp tbl_lbh_qd_report_base_temp2020814 tbl_lbh_qd_report_base_temp2020814_1 tbl_lbh_qd_report_cx tbl_lbh_qd_report_cx_temp2020814 tbl_lbh_qd_report_statistics tbl_lbh_qd_report_statistics_temp tbl_lbh_qd_report_statistics_temp2020814 tbl_lbh_qd_report_statistics_temp_temp2020814 tbl_lbh_qd_report_sx tbl_lbh_qd_report_sx_temp2020814 tbl_sxc_daily_report_dim_jcxs_cx tbl_sxc_daily_report_dim_jcxs_cx_full tbl_sxc_daily_report_dim_jcxs_cx_full_to_drop tbl_sxc_daily_report_dim_jcxs_cx_incr tbl_sxc_daily_report_dim_jcxs_cx_temp tbl_sxc_daily_report_dim_jcxs_sx tbl_sxc_daily_report_dim_jcxs_sx_full tbl_sxc_daily_report_dim_jcxs_sx_full_to_drop tbl_sxc_daily_report_dim_jcxs_sx_incr tbl_sxc_daily_report_dim_jcxs_sx_temp test test20201222 test20210205 test20210205_02 test20210205_policyno test430 test_20210208_p test_ncm testn tf_cross_nip_tmp01 tf_cross_nip_tmp02 tf_cross_nip_tmp_ts tf_cross_nip_tmp_ts1 tf_policy tf_policy_xll tf_policy_xll_x tf_policy_xll_x_0 tf_policy_xll_x_1 tishu_nonauto_20200908 tishu_nonauto_20200908_1 tishu_sgh_20200907 tishu_test_01 tishu_test_02 tishu_test_2019 tishu_test_2020 tishu_test_20200813 tishu_test_20200813_01 tishu_test_20200813_02 tishu_test_20200813_03 tishu_test_20200813_04 tishu_test_20200825_01 tishu_test_20200825_02 tmp_all_stats tmp_allot tmp_allot_xll tmp_cache_cx_healthinsur tmp_cache_sx_healthinsur tmp_caf_achievements_2 tmp_caf_achievements_2_channel tmp_caf_salesboard tmp_caf_salesboard_chayi tmp_caf_salesboard_map tmp_cggx_base tmp_cggx_base01 tmp_cggx_base_all tmp_cggx_base_all_life tmp_cggx_base_life tmp_cggx_base_maxdate tmp_cggx_enabled tmp_cggx_enabled_life tmp_classcode_convert tmp_crm_cust_cxzt_new_001 tmp_crm_cust_cxzt_new_002 tmp_crm_cust_cxzt_new_003 tmp_crm_cust_cxzt_new_003_1 tmp_crm_cust_cxzt_new_004 tmp_crm_cust_cxzt_zjs tmp_cross_cust_sx_dst_pre tmp_crsp_cxgx_fpmx_1 tmp_crsp_cxgx_fpmx_2 tmp_crsp_cxgx_fpmx_3 tmp_crsp_cxgx_fpmx_4 tmp_cust1 tmp_cust2 tmp_cust3 tmp_cust4 tmp_cust5 tmp_cust6 tmp_custx tmp_day_ncsm tmp_day_saleboard tmp_day_saleboard1 tmp_day_t1_all tmp_day_t1_all_sx tmp_day_t1_jg_cxjk tmp_day_t1_jg_sxjk tmp_dim_cggx_all tmp_dim_cggx_all_life tmp_dim_dep1 tmp_dim_dep2 tmp_dim_dep3 tmp_dim_dep_all1 tmp_dim_dep_all2 tmp_dim_dep_all3 tmp_dim_intorg tmp_dim_intorg2 tmp_dim_org_life tmp_dim_org_p tmp_dim_org_p_1 tmp_dim_rlship tmp_dim_rlship1 tmp_dup_classcode tmp_edw_to_crsp_cxxb tmp_emp_01 tmp_emp_01_xll tmp_end_01 tmp_end_01_xll tmp_end_02 tmp_end_02_xll tmp_end_03 tmp_end_03_xll tmp_end_04 tmp_end_04_xll tmp_end_05 tmp_end_05_xll tmp_end_06 tmp_end_06_xll tmp_end_07 tmp_end_07_xll tmp_end_08 tmp_end_09 tmp_end_final tmp_fpmx_auto_insurance tmp_gxb_hjx_1 tmp_gxb_hjx_2 tmp_gxb_inc_date tmp_gxb_sykb_yy tmp_jkx_src_01 tmp_jkx_src_02 tmp_kjgx_to_crsp_cxyh tmp_life_emp_1 tmp_life_emp_2 tmp_life_emp_3 tmp_life_emp_4 tmp_life_policy_1 tmp_life_policy_1_bak tmp_life_policy_1_bak3 tmp_life_policy_1_exist tmp_life_policy_2 tmp_life_policy_2_bak tmp_life_policy_3 tmp_mfhx_emp_01 tmp_mfhx_end tmp_mfhx_end_01 tmp_mfhx_end_03 tmp_mfhx_end_04 tmp_mfhx_end_05 tmp_mfhx_end_2 tmp_ncsm_momly tmp_ncsm_mtd tmp_p_accu_01 tmp_p_accu_01_life tmp_p_accu_02 tmp_p_accu_02_life tmp_p_accu_03 tmp_p_accu_03_life tmp_p_accu_04 tmp_p_accu_04_else tmp_p_accu_04_life tmp_p_appcust tmp_p_appcust_test tmp_phone01 tmp_phone02 tmp_r88_sel_ins_fee_d tmp_rpt_nip_01 tmp_rpt_nip_02 tmp_rpt_nip_03 tmp_rpt_nip_allfgs tmp_rpt_nip_allfgs_tmp tmp_t1_jg_org tmp_test tmp_todist_edw_org wujigou xll_01 xll_auto_insurance_allot_cust xll_tmp_01 xll_tmp_02 xll_tmp_03 xz_jg zp_20200817_06 zp_20200921_01"i=0
for table_name in ${table_names}
doecho "#################################### 开始检查表 ${table_name} #############################" >> ${debug_log} 2>&1table_temp="$db_name.$table_name"status="FALSE"############################ 进入SQL目录,找到所有使用了该表的SQL脚本############################related_sql_script=`extract_all_caller $sql_path $table_temp`echo "表${table_temp}对应的SQL脚本有: "$related_sql_script##################################循环遍历SHELL脚本,找到调用的SHELL脚本############for script in ${related_sql_script}do#参数一 shell的目录 参数二 脚本的名称  参数三 脚本引用的调用路径res=`extract_shell_call_path $shell_path $script ${script}`if [[ $res =~ "big_main.sh" ]] || [[ $res =~ "run_main.sh" ]] ||  [[ $res =~ "run_ten.sh" ]]thenstatus="TRUE"echo "${table_temp} => ${script} => ${res}" >> $table_shell_call_log 2>&1fidoneif [[ $status == "FALSE" ]]thenecho "${table_temp} => ${related_sql_script} => ${res}" >> $table_shell_call_log 2>&1fiecho "${table_temp} => ${status}" >>  $table_have_caller 2>&1let i+=1echo "第${i}个"echo "#################################### 结束检查第${i}个表 ${table_name} #############################" >> ${debug_log} 2>&1
done

上面的代码一共有两个主要方法:

extract_all_caller : 通过关键字,可以是一个SHELL脚本名称,或者是SQL脚本名称,找到调用该脚本的多个上级脚本。参数1是对应目录,参数2是对应的关键字,参数3是标识查找的是SHELL还是SQL

extract_shell_call_path:一个递归方法,通过传入的参数递归查找调度路径,出口为: big_main.sh,run_main.sh,run_ten.sh 或者 上级调用为空(说明该脚本已经被丢弃不使用了,可以清理)

记录一下自己写的小工具:shell 调度 SQL 批处理,递归查找调度路径相关推荐

  1. 【python小项目】用python写一个小工具——番茄钟

    用python写一个小工具--番茄钟 最近听到朋友说在用番茄钟,有点兴趣也想下载一个来用用,后面仔细一想这玩意做起来也不难,索性自己顺手写一个算了,在这里也分享给大家了 一.功能简述 番茄钟即番茄工作 ...

  2. 自己写个小工具——图片水印生成器

    自己写个小工具--图片水印生成器 自己写个小工具--图片水印生成器 介绍 安装 使用说明 其他 TODO LIST 介绍 做技术好几年了,最近想总结一下,写了几篇文章,不过发现经常有转载的地方,所以想 ...

  3. 【分享】小工具大智慧之Sql执行工具

    [分享]小工具大智慧之Sql执行工具 原文:[分享]小工具大智慧之Sql执行工具 工具概况 情况是这样的,以前我们公司有很多Sql用于完成一些很不起眼但又不得不完成的业务,出于方便就直接在Sql查询分 ...

  4. 工具-eclipse-hibernate关于快速生成*.hbm.xml文件,与bean文件的操作,不使用hibernate tool解决办法之一,主要为了快速开发,写的小工具

    实现思想:就是java对目标表的字符串的处理,以及基础的sql语句 不能使用hibernate tool ,解决办法 为了记录,以后也许还会用的小工具 **工具优点:比手打生成快,能加快hiberna ...

  5. java写测试小工具,java试题自我测试小工具

    java试题自我测试小工具 北京石油化工学院 数理系 科 072 071616 刘红育 1 Java 语言综合设计实验报告 --GUI 编程设计题目: Java 试题自我测试小工具 班级: 学号: 姓 ...

  6. python如何写各种小工具_python写了个小工具

    源码太多,看的头疼.在目录里找含有某个字符串的文件.结果写到result.txt中 import os import codecs fileinfo=open('result.txt','w')  # ...

  7. 能加密的写日记小工具(解压可用,无需安装)

    下载链接: https://download.csdn.net/download/plsong_csdn/11537804 直接下载,解压即可用 保护自己的隐私,养成每天记录的好习惯.

  8. Python写黑客小工具,360免杀

    构思: client:反向连接server,执行shell命令 server:发送命令,控制客户端 import subprocess import socket import threadingta ...

  9. UGUI 多音字项目中用到多音字 奈何拼音字体库并非支持多音字,随便写了小工具类

    废话不多说 说一下解决思路 第一:字体库包含多音字 但是因为文档只支持一种字体.所以就是将要变换的多音字转化为空格(不显示),将多音字放置到空格位置上(修改字体) 第二:一句中可能有多种字体 如 的 ...

最新文章

  1. 《评人工智能如何走向新阶段》后记(再续13)
  2. 你只使用到了 VS Code 20% 的功能?让 VS Code 首著作者带你玩转 VS Code!
  3. DPDK 内存池rte_mempool实现(二十三)
  4. python实现图的数据存储_Neo4j推出基于Python的嵌入式图数据存储
  5. mq3.8.9版本有什么不同_Python3.9版本新特性:字典合并操作的详细解读
  6. python最大公约数和最小公倍数_python怎么求最大公约数和最小公倍数
  7. springcloud服务注册和发现
  8. 软考信息系统项目管理师_信息化与信息系统4_软件工程_新一代信息技术---软考高级之信息系统项目管理师006
  9. 我的Linux系统的一些截图 之二
  10. Nhibernate出现No row with the given identifier exists问题的产生原因及解决方法
  11. NSSet与NSArray区别
  12. [PyTorch] 基于Python和PyTorch的cifar-10分类
  13. EAS开发单据分录和序时簿添加合计
  14. 对Kindle进行可用性研究
  15. 从头开始实现Java多人联机游戏(飞机大战)源码粘贴即用
  16. web网页设计实例作业——代码质量好-上海介绍(5页) HTML+CSS+JavaScript(含源码)
  17. 聚类分析(K-means、系统聚类和二阶聚类)的原理、实例及在SPSS中的实现(一)
  18. python 人民币兑美元汇率代码_人民币对美元汇率的大数据分析与预测【完整代码】...
  19. 内存的永久保存区内存溢出解决
  20. 电脑每次重启总是会进行磁盘检查

热门文章

  1. 冒泡排序、冒泡排序动画、冒泡排序代码、冒泡排序教程
  2. String 去掉空格回车等符号
  3. C#毕业设计——基于C#+asp.net+sqlserver的学生信息管理系统设计与实现(毕业论文+程序源码)——学生信息管理系统
  4. 100vh和100%的区别
  5. windows server 2012 R2登录密码忘了怎么办呢?
  6. 怎样成为一个高级JAVA工程师
  7. Navicat使用方法
  8. Python 强化学习实用指南:1~5
  9. Matthew Ball:为什么说AR/VR元宇宙是Meta和苹果的下一个战场?
  10. 图形学学习笔记2——点阵图形光栅化