private StringBuilder CreateSelectSQL(SearchCondition condition)
        {
            StringBuilder sql = new StringBuilder();

            sql.AppendLine(" SELECT ");
            sql.AppendLine("        T_RATE_MS.I_RATE_CLS ");                                                                       // レート区分
            sql.AppendLine("       ,T_RATE_MS.I_COMPANY_CD ");
            sql.AppendLine("       ,T_CLS_DETAIL_MS.I_CLS_DETAIL_DESC ");                                                          // レート区分名
            sql.AppendLine("       ,T_RATE_MS.I_DL_CURR_CD ");                                                                     // 取引通貨
            sql.AppendLine("       ,T_CURR_MS.I_CURR_DESC ");                                                                      // 通貨名
            sql.AppendLine("       ,DECODE(T_RATE_MS.I_EFF_END_DATE,99999999,99991231,T_RATE_MS.I_EFF_END_DATE) I_EFF_END_DATE "); // 有効期限
            sql.AppendLine("       ,T_RATE_MS.I_RATE ");                                                                           // レート
            sql.AppendLine("       ,T_RATE_MS.I_CNV_METHOD ");                                                                     // 換算方式
            sql.AppendLine("       ,''  as I_CNV_METHOD_DESC");                                                                    // 換算方式
            sql.AppendLine("       ,T_RATE_MS.I_UPD_TIMESTAMP ");                                                                  // 更新タイプスタンプ

            sql.AppendLine("       ,T_RATE_MS.I_EFF_END_DATE I_EFF_END_DATE_NUM ");                                                //有効期限(データ)
            sql.AppendLine("  FROM ");
            sql.AppendLine("       T_RATE_MS LEFT JOIN T_CURR_MS ON T_RATE_MS.I_DL_CURR_CD = T_CURR_MS.I_CURR_CD");
            sql.Append("               AND T_RATE_MS.I_COMPANY_CD = ").Append(":I_COMPANY_CD");
            sql.AppendLine("       LEFT JOIN T_CLS_DETAIL_MS ON T_RATE_MS.I_RATE_CLS = T_CLS_DETAIL_MS.I_CLS_DETAIL_CD");
            sql.AppendLine("            AND T_CLS_DETAIL_MS.I_CLS_CD = ").AppendLine(CommonUtil.AddSquote(Constant.RATE));
            sql.AppendLine("            AND T_CLS_DETAIL_MS.I_LANGUAGE_CD = ").Append(":I_LANGUAGE_CD");


            sql.AppendLine(condition.BuildParameterConditionSql(true));

            sql.AppendLine(" ORDER BY T_RATE_MS.I_RATE_CLS, T_RATE_MS.I_DL_CURR_CD, T_RATE_MS.I_EFF_END_DATE ");
            return(sql);
        }