[Fix](Outfile) Fix the column type mapping in the orc/parquet file format (#32281)
| Doris Type | Orc Type | Parquet Type | |---------------------|--------------------|------------------------| | Date | Long (logical: DATE) | int32 (Logical: Date) | | DateTime | TIMESTAMP (logical: TIMESTAMP) | int96 |
This commit is contained in:
@ -28,6 +28,7 @@
|
||||
#include <arrow/util/decimal.h>
|
||||
#include <arrow/visit_type_inline.h>
|
||||
#include <arrow/visitor.h>
|
||||
#include <cctz/time_zone.h>
|
||||
#include <glog/logging.h>
|
||||
#include <stdint.h>
|
||||
|
||||
@ -71,16 +72,12 @@ namespace doris {
|
||||
class FromBlockConverter : public arrow::TypeVisitor {
|
||||
public:
|
||||
FromBlockConverter(const vectorized::Block& block, const std::shared_ptr<arrow::Schema>& schema,
|
||||
arrow::MemoryPool* pool)
|
||||
: _block(block), _schema(schema), _pool(pool), _cur_field_idx(-1) {
|
||||
// obtain local time zone
|
||||
time_t ts = 0;
|
||||
struct tm t;
|
||||
char buf[16];
|
||||
localtime_r(&ts, &t);
|
||||
strftime(buf, sizeof(buf), "%Z", &t);
|
||||
_time_zone = buf;
|
||||
}
|
||||
arrow::MemoryPool* pool, const cctz::time_zone& timezone_obj)
|
||||
: _block(block),
|
||||
_schema(schema),
|
||||
_pool(pool),
|
||||
_cur_field_idx(-1),
|
||||
_timezone_obj(timezone_obj) {}
|
||||
|
||||
~FromBlockConverter() override = default;
|
||||
|
||||
@ -363,7 +360,7 @@ private:
|
||||
vectorized::DataTypePtr _cur_type;
|
||||
arrow::ArrayBuilder* _cur_builder = nullptr;
|
||||
|
||||
std::string _time_zone;
|
||||
const cctz::time_zone& _timezone_obj;
|
||||
|
||||
std::vector<std::shared_ptr<arrow::Array>> _arrays;
|
||||
};
|
||||
@ -391,7 +388,8 @@ Status FromBlockConverter::convert(std::shared_ptr<arrow::RecordBatch>* out) {
|
||||
auto column = _cur_col->convert_to_full_column_if_const();
|
||||
try {
|
||||
_cur_type->get_serde()->write_column_to_arrow(*column, nullptr, _cur_builder,
|
||||
_cur_start, _cur_start + _cur_rows);
|
||||
_cur_start, _cur_start + _cur_rows,
|
||||
_timezone_obj);
|
||||
} catch (std::exception& e) {
|
||||
return Status::InternalError("Fail to convert block data to arrow data, error: {}",
|
||||
e.what());
|
||||
@ -407,8 +405,9 @@ Status FromBlockConverter::convert(std::shared_ptr<arrow::RecordBatch>* out) {
|
||||
|
||||
Status convert_to_arrow_batch(const vectorized::Block& block,
|
||||
const std::shared_ptr<arrow::Schema>& schema, arrow::MemoryPool* pool,
|
||||
std::shared_ptr<arrow::RecordBatch>* result) {
|
||||
FromBlockConverter converter(block, schema, pool);
|
||||
std::shared_ptr<arrow::RecordBatch>* result,
|
||||
const cctz::time_zone& timezone_obj) {
|
||||
FromBlockConverter converter(block, schema, pool, timezone_obj);
|
||||
return converter.convert(result);
|
||||
}
|
||||
|
||||
|
||||
@ -17,6 +17,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <cctz/time_zone.h>
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include "common/status.h"
|
||||
@ -38,6 +40,7 @@ namespace doris {
|
||||
|
||||
Status convert_to_arrow_batch(const vectorized::Block& block,
|
||||
const std::shared_ptr<arrow::Schema>& schema, arrow::MemoryPool* pool,
|
||||
std::shared_ptr<arrow::RecordBatch>* result);
|
||||
std::shared_ptr<arrow::RecordBatch>* result,
|
||||
const cctz::time_zone& timezone_obj);
|
||||
|
||||
} // namespace doris
|
||||
|
||||
@ -78,13 +78,23 @@ Status convert_to_arrow_type(const TypeDescriptor& type, std::shared_ptr<arrow::
|
||||
case TYPE_HLL:
|
||||
case TYPE_DATE:
|
||||
case TYPE_DATETIME:
|
||||
case TYPE_DATEV2:
|
||||
case TYPE_DATETIMEV2:
|
||||
case TYPE_STRING:
|
||||
case TYPE_JSONB:
|
||||
case TYPE_OBJECT:
|
||||
*result = arrow::utf8();
|
||||
break;
|
||||
case TYPE_DATEV2:
|
||||
*result = std::make_shared<arrow::Date32Type>();
|
||||
break;
|
||||
case TYPE_DATETIMEV2:
|
||||
if (type.scale > 3) {
|
||||
*result = std::make_shared<arrow::TimestampType>(arrow::TimeUnit::MICRO);
|
||||
} else if (type.scale > 0) {
|
||||
*result = std::make_shared<arrow::TimestampType>(arrow::TimeUnit::MILLI);
|
||||
} else {
|
||||
*result = std::make_shared<arrow::TimestampType>(arrow::TimeUnit::SECOND);
|
||||
}
|
||||
break;
|
||||
case TYPE_DECIMALV2:
|
||||
*result = std::make_shared<arrow::Decimal128Type>(27, 9);
|
||||
break;
|
||||
|
||||
@ -269,7 +269,7 @@ void DataTypeArraySerDe::read_one_cell_from_jsonb(IColumn& column, const JsonbVa
|
||||
|
||||
void DataTypeArraySerDe::write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const {
|
||||
int end, const cctz::time_zone& ctz) const {
|
||||
auto& array_column = static_cast<const ColumnArray&>(column);
|
||||
auto& offsets = array_column.get_offsets();
|
||||
auto& nested_data = array_column.get_data();
|
||||
@ -283,7 +283,7 @@ void DataTypeArraySerDe::write_column_to_arrow(const IColumn& column, const Null
|
||||
}
|
||||
checkArrowStatus(builder.Append(), column.get_name(), array_builder->type()->name());
|
||||
nested_serde->write_column_to_arrow(nested_data, nullptr, nested_builder,
|
||||
offsets[array_idx - 1], offsets[array_idx]);
|
||||
offsets[array_idx - 1], offsets[array_idx], ctz);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -83,8 +83,8 @@ public:
|
||||
void read_one_cell_from_jsonb(IColumn& column, const JsonbValue* arg) const override;
|
||||
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override;
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override;
|
||||
void read_column_from_arrow(IColumn& column, const arrow::Array* arrow_array, int start,
|
||||
int end, const cctz::time_zone& ctz) const override;
|
||||
|
||||
|
||||
@ -62,8 +62,8 @@ public:
|
||||
void read_one_cell_from_jsonb(IColumn& column, const JsonbValue* arg) const override;
|
||||
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override {
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override {
|
||||
throw doris::Exception(ErrorCode::NOT_IMPLEMENTED_ERROR,
|
||||
"write_column_to_arrow with type " + column.get_name());
|
||||
}
|
||||
|
||||
@ -160,7 +160,7 @@ Status DataTypeDateTimeSerDe::deserialize_one_cell_from_json(IColumn& column, Sl
|
||||
|
||||
void DataTypeDate64SerDe::write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const {
|
||||
int end, const cctz::time_zone& ctz) const {
|
||||
auto& col_data = static_cast<const ColumnVector<Int64>&>(column).get_data();
|
||||
auto& string_builder = assert_cast<arrow::StringBuilder&>(*array_builder);
|
||||
for (size_t i = start; i < end; ++i) {
|
||||
|
||||
@ -57,8 +57,8 @@ public:
|
||||
const FormatOptions& options) const override;
|
||||
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override;
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override;
|
||||
void read_column_from_arrow(IColumn& column, const arrow::Array* arrow_array, int start,
|
||||
int end, const cctz::time_zone& ctz) const override;
|
||||
Status write_column_to_mysql(const IColumn& column, MysqlRowBuffer<true>& row_buffer,
|
||||
|
||||
@ -100,19 +100,27 @@ Status DataTypeDateTimeV2SerDe::deserialize_one_cell_from_json(IColumn& column,
|
||||
|
||||
void DataTypeDateTimeV2SerDe::write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const {
|
||||
auto& col_data = static_cast<const ColumnVector<UInt64>&>(column).get_data();
|
||||
auto& string_builder = assert_cast<arrow::StringBuilder&>(*array_builder);
|
||||
int end, const cctz::time_zone& ctz) const {
|
||||
const auto& col_data = static_cast<const ColumnVector<UInt64>&>(column).get_data();
|
||||
auto& timestamp_builder = assert_cast<arrow::TimestampBuilder&>(*array_builder);
|
||||
for (size_t i = start; i < end; ++i) {
|
||||
char buf[64];
|
||||
const DateV2Value<DateTimeV2ValueType>* time_val =
|
||||
(const DateV2Value<DateTimeV2ValueType>*)(&col_data[i]);
|
||||
int len = time_val->to_buffer(buf);
|
||||
if (null_map && (*null_map)[i]) {
|
||||
checkArrowStatus(string_builder.AppendNull(), column.get_name(),
|
||||
checkArrowStatus(timestamp_builder.AppendNull(), column.get_name(),
|
||||
array_builder->type()->name());
|
||||
} else {
|
||||
checkArrowStatus(string_builder.Append(buf, len), column.get_name(),
|
||||
int64_t timestamp = 0;
|
||||
DateV2Value<DateTimeV2ValueType> datetime_val =
|
||||
binary_cast<UInt64, DateV2Value<DateTimeV2ValueType>>(col_data[i]);
|
||||
datetime_val.unix_timestamp(×tamp, ctz);
|
||||
|
||||
if (scale > 3) {
|
||||
uint32_t microsecond = datetime_val.microsecond();
|
||||
timestamp = (timestamp * 1000000) + microsecond;
|
||||
} else if (scale > 0) {
|
||||
uint32_t millisecond = datetime_val.microsecond() / 1000;
|
||||
timestamp = (timestamp * 1000) + millisecond;
|
||||
}
|
||||
checkArrowStatus(timestamp_builder.Append(timestamp), column.get_name(),
|
||||
array_builder->type()->name());
|
||||
}
|
||||
}
|
||||
|
||||
@ -60,8 +60,8 @@ public:
|
||||
const FormatOptions& options) const override;
|
||||
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override;
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override;
|
||||
void read_column_from_arrow(IColumn& column, const arrow::Array* arrow_array, int start,
|
||||
int end, const cctz::time_zone& ctz) const override;
|
||||
|
||||
|
||||
@ -27,6 +27,9 @@
|
||||
namespace doris {
|
||||
namespace vectorized {
|
||||
|
||||
// This number represents the number of days from 0000-01-01 to 1970-01-01
|
||||
static const int32_t date_threshold = 719528;
|
||||
|
||||
Status DataTypeDateV2SerDe::serialize_column_to_json(const IColumn& column, int start_idx,
|
||||
int end_idx, BufferWritable& bw,
|
||||
FormatOptions& options) const {
|
||||
@ -79,19 +82,17 @@ Status DataTypeDateV2SerDe::deserialize_one_cell_from_json(IColumn& column, Slic
|
||||
|
||||
void DataTypeDateV2SerDe::write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const {
|
||||
auto& col_data = static_cast<const ColumnVector<UInt32>&>(column).get_data();
|
||||
auto& string_builder = assert_cast<arrow::StringBuilder&>(*array_builder);
|
||||
int end, const cctz::time_zone& ctz) const {
|
||||
const auto& col_data = static_cast<const ColumnVector<UInt32>&>(column).get_data();
|
||||
auto& date32_builder = assert_cast<arrow::Date32Builder&>(*array_builder);
|
||||
for (size_t i = start; i < end; ++i) {
|
||||
char buf[64];
|
||||
const DateV2Value<DateV2ValueType>* time_val =
|
||||
(const DateV2Value<DateV2ValueType>*)(&col_data[i]);
|
||||
int len = time_val->to_buffer(buf);
|
||||
int32_t daynr = binary_cast<UInt32, DateV2Value<DateV2ValueType>>(col_data[i]).daynr() -
|
||||
date_threshold;
|
||||
if (null_map && (*null_map)[i]) {
|
||||
checkArrowStatus(string_builder.AppendNull(), column.get_name(),
|
||||
checkArrowStatus(date32_builder.AppendNull(), column.get_name(),
|
||||
array_builder->type()->name());
|
||||
} else {
|
||||
checkArrowStatus(string_builder.Append(buf, len), column.get_name(),
|
||||
checkArrowStatus(date32_builder.Append(daynr), column.get_name(),
|
||||
array_builder->type()->name());
|
||||
}
|
||||
}
|
||||
@ -157,43 +158,16 @@ Status DataTypeDateV2SerDe::write_column_to_orc(const std::string& timezone, con
|
||||
orc::ColumnVectorBatch* orc_col_batch, int start,
|
||||
int end,
|
||||
std::vector<StringRef>& buffer_list) const {
|
||||
auto& col_data = assert_cast<const ColumnVector<UInt32>&>(column).get_data();
|
||||
orc::StringVectorBatch* cur_batch = dynamic_cast<orc::StringVectorBatch*>(orc_col_batch);
|
||||
|
||||
char* ptr = (char*)malloc(BUFFER_UNIT_SIZE);
|
||||
if (!ptr) {
|
||||
return Status::InternalError(
|
||||
"malloc memory error when write largeint column data to orc file.");
|
||||
}
|
||||
StringRef bufferRef;
|
||||
bufferRef.data = ptr;
|
||||
bufferRef.size = BUFFER_UNIT_SIZE;
|
||||
size_t offset = 0;
|
||||
const size_t begin_off = offset;
|
||||
|
||||
const auto& col_data = assert_cast<const ColumnVector<UInt32>&>(column).get_data();
|
||||
auto* cur_batch = dynamic_cast<orc::LongVectorBatch*>(orc_col_batch);
|
||||
for (size_t row_id = start; row_id < end; row_id++) {
|
||||
if (cur_batch->notNull[row_id] == 0) {
|
||||
continue;
|
||||
}
|
||||
|
||||
int len = binary_cast<UInt32, DateV2Value<DateV2ValueType>>(col_data[row_id])
|
||||
.to_buffer(const_cast<char*>(bufferRef.data) + offset);
|
||||
|
||||
REALLOC_MEMORY_FOR_ORC_WRITER()
|
||||
|
||||
cur_batch->length[row_id] = len;
|
||||
offset += len;
|
||||
cur_batch->data[row_id] =
|
||||
binary_cast<UInt32, DateV2Value<DateV2ValueType>>(col_data[row_id]).daynr() -
|
||||
date_threshold;
|
||||
}
|
||||
|
||||
size_t data_off = 0;
|
||||
for (size_t row_id = start; row_id < end; row_id++) {
|
||||
if (cur_batch->notNull[row_id] == 1) {
|
||||
cur_batch->data[row_id] = const_cast<char*>(bufferRef.data) + begin_off + data_off;
|
||||
data_off += cur_batch->length[row_id];
|
||||
}
|
||||
}
|
||||
|
||||
buffer_list.emplace_back(bufferRef);
|
||||
cur_batch->numElements = end - start;
|
||||
return Status::OK();
|
||||
}
|
||||
|
||||
@ -58,8 +58,8 @@ public:
|
||||
const FormatOptions& options) const override;
|
||||
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override;
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override;
|
||||
void read_column_from_arrow(IColumn& column, const arrow::Array* arrow_array, int start,
|
||||
int end, const cctz::time_zone& ctz) const override;
|
||||
Status write_column_to_mysql(const IColumn& column, MysqlRowBuffer<true>& row_buffer,
|
||||
|
||||
@ -86,7 +86,7 @@ Status DataTypeDecimalSerDe<T>::deserialize_one_cell_from_json(IColumn& column,
|
||||
template <typename T>
|
||||
void DataTypeDecimalSerDe<T>::write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const {
|
||||
int end, const cctz::time_zone& ctz) const {
|
||||
auto& col = reinterpret_cast<const ColumnDecimal<T>&>(column);
|
||||
auto& builder = reinterpret_cast<arrow::Decimal128Builder&>(*array_builder);
|
||||
if constexpr (std::is_same_v<T, Decimal<Int128>>) {
|
||||
|
||||
@ -97,8 +97,8 @@ public:
|
||||
void read_one_cell_from_jsonb(IColumn& column, const JsonbValue* arg) const override;
|
||||
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override;
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override;
|
||||
void read_column_from_arrow(IColumn& column, const arrow::Array* arrow_array, int start,
|
||||
int end, const cctz::time_zone& ctz) const override;
|
||||
Status write_column_to_mysql(const IColumn& column, MysqlRowBuffer<true>& row_buffer,
|
||||
|
||||
@ -133,8 +133,8 @@ void DataTypeHLLSerDe::read_one_cell_from_jsonb(IColumn& column, const JsonbValu
|
||||
}
|
||||
|
||||
void DataTypeHLLSerDe::write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const {
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const {
|
||||
const auto& col = assert_cast<const ColumnHLL&>(column);
|
||||
auto& builder = assert_cast<arrow::StringBuilder&>(*array_builder);
|
||||
for (size_t string_i = start; string_i < end; ++string_i) {
|
||||
|
||||
@ -53,8 +53,8 @@ public:
|
||||
|
||||
void read_one_cell_from_jsonb(IColumn& column, const JsonbValue* arg) const override;
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override;
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override;
|
||||
void read_column_from_arrow(IColumn& column, const arrow::Array* arrow_array, int start,
|
||||
int end, const cctz::time_zone& ctz) const override {
|
||||
throw doris::Exception(ErrorCode::NOT_IMPLEMENTED_ERROR,
|
||||
|
||||
@ -112,7 +112,7 @@ Status DataTypeJsonbSerDe::deserialize_one_cell_from_json(IColumn& column, Slice
|
||||
|
||||
void DataTypeJsonbSerDe::write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const {
|
||||
int end, const cctz::time_zone& ctz) const {
|
||||
const auto& string_column = assert_cast<const ColumnString&>(column);
|
||||
auto& builder = assert_cast<arrow::StringBuilder&>(*array_builder);
|
||||
for (size_t string_i = start; string_i < end; ++string_i) {
|
||||
|
||||
@ -42,8 +42,8 @@ public:
|
||||
Status write_column_to_mysql(const IColumn& column, MysqlRowBuffer<false>& row_buffer,
|
||||
int row_idx, bool col_const) const override;
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override;
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override;
|
||||
|
||||
Status serialize_one_cell_to_json(const IColumn& column, int row_num, BufferWritable& bw,
|
||||
FormatOptions& options) const override;
|
||||
|
||||
@ -325,8 +325,8 @@ void DataTypeMapSerDe::write_one_cell_to_jsonb(const IColumn& column, JsonbWrite
|
||||
}
|
||||
|
||||
void DataTypeMapSerDe::write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const {
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const {
|
||||
auto& builder = assert_cast<arrow::MapBuilder&>(*array_builder);
|
||||
auto& map_column = assert_cast<const ColumnMap&>(column);
|
||||
const IColumn& nested_keys_column = map_column.get_keys();
|
||||
@ -360,15 +360,15 @@ void DataTypeMapSerDe::write_column_to_arrow(const IColumn& column, const NullMa
|
||||
checkArrowStatus(builder.Append(), column.get_name(), array_builder->type()->name());
|
||||
|
||||
key_serde->write_column_to_arrow(*key_mutable_data, nullptr, key_builder, 0,
|
||||
key_mutable_data->size());
|
||||
key_mutable_data->size(), ctz);
|
||||
value_serde->write_column_to_arrow(*value_mutable_data, nullptr, value_builder, 0,
|
||||
value_mutable_data->size());
|
||||
value_mutable_data->size(), ctz);
|
||||
} else {
|
||||
checkArrowStatus(builder.Append(), column.get_name(), array_builder->type()->name());
|
||||
key_serde->write_column_to_arrow(nested_keys_column, nullptr, key_builder,
|
||||
offsets[r - 1], offsets[r]);
|
||||
offsets[r - 1], offsets[r], ctz);
|
||||
value_serde->write_column_to_arrow(nested_values_column, nullptr, value_builder,
|
||||
offsets[r - 1], offsets[r]);
|
||||
offsets[r - 1], offsets[r], ctz);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -76,8 +76,8 @@ public:
|
||||
|
||||
void read_one_cell_from_jsonb(IColumn& column, const JsonbValue* arg) const override;
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override;
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override;
|
||||
void read_column_from_arrow(IColumn& column, const arrow::Array* arrow_array, int start,
|
||||
int end, const cctz::time_zone& ctz) const override;
|
||||
|
||||
|
||||
@ -262,11 +262,11 @@ void DataTypeNullableSerDe::read_one_cell_from_jsonb(IColumn& column, const Json
|
||||
**/
|
||||
void DataTypeNullableSerDe::write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const {
|
||||
int end, const cctz::time_zone& ctz) const {
|
||||
const auto& column_nullable = assert_cast<const ColumnNullable&>(column);
|
||||
nested_serde->write_column_to_arrow(column_nullable.get_nested_column(),
|
||||
&column_nullable.get_null_map_data(), array_builder, start,
|
||||
end);
|
||||
end, ctz);
|
||||
}
|
||||
|
||||
void DataTypeNullableSerDe::read_column_from_arrow(IColumn& column, const arrow::Array* arrow_array,
|
||||
|
||||
@ -70,8 +70,8 @@ public:
|
||||
void read_one_cell_from_jsonb(IColumn& column, const JsonbValue* arg) const override;
|
||||
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override;
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override;
|
||||
void read_column_from_arrow(IColumn& column, const arrow::Array* arrow_array, int start,
|
||||
int end, const cctz::time_zone& ctz) const override;
|
||||
Status write_column_to_mysql(const IColumn& column, MysqlRowBuffer<true>& row_buffer,
|
||||
|
||||
@ -72,7 +72,7 @@ using DORIS_NUMERIC_ARROW_BUILDER =
|
||||
template <typename T>
|
||||
void DataTypeNumberSerDe<T>::write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const {
|
||||
int end, const cctz::time_zone& ctz) const {
|
||||
auto& col_data = assert_cast<const ColumnType&>(column).get_data();
|
||||
using ARROW_BUILDER_TYPE = typename TypeMapLookup<T, DORIS_NUMERIC_ARROW_BUILDER>::ValueType;
|
||||
auto arrow_null_map = revert_null_map(null_map, start, end);
|
||||
|
||||
@ -80,8 +80,8 @@ public:
|
||||
void read_one_cell_from_jsonb(IColumn& column, const JsonbValue* arg) const override;
|
||||
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override;
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override;
|
||||
void read_column_from_arrow(IColumn& column, const arrow::Array* arrow_array, int start,
|
||||
int end, const cctz::time_zone& ctz) const override;
|
||||
|
||||
|
||||
@ -72,8 +72,8 @@ public:
|
||||
void read_one_cell_from_jsonb(IColumn& column, const JsonbValue* arg) const override;
|
||||
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override {
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override {
|
||||
throw doris::Exception(ErrorCode::NOT_IMPLEMENTED_ERROR,
|
||||
"write_column_to_arrow with type " + column.get_name());
|
||||
}
|
||||
|
||||
@ -100,8 +100,8 @@ public:
|
||||
col.insert_value(val);
|
||||
}
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override {
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override {
|
||||
throw doris::Exception(ErrorCode::NOT_IMPLEMENTED_ERROR,
|
||||
"write_column_to_arrow with type " + column.get_name());
|
||||
}
|
||||
|
||||
@ -261,8 +261,8 @@ public:
|
||||
|
||||
// Arrow serializer and deserializer
|
||||
virtual void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const = 0;
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const = 0;
|
||||
virtual void read_column_from_arrow(IColumn& column, const arrow::Array* arrow_array, int start,
|
||||
int end, const cctz::time_zone& ctz) const = 0;
|
||||
|
||||
|
||||
@ -156,8 +156,8 @@ public:
|
||||
}
|
||||
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override {
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override {
|
||||
const auto& string_column = assert_cast<const ColumnType&>(column);
|
||||
auto& builder = assert_cast<arrow::StringBuilder&>(*array_builder);
|
||||
for (size_t string_i = start; string_i < end; ++string_i) {
|
||||
|
||||
@ -300,7 +300,7 @@ void DataTypeStructSerDe::read_one_cell_from_jsonb(IColumn& column, const JsonbV
|
||||
|
||||
void DataTypeStructSerDe::write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const {
|
||||
int end, const cctz::time_zone& ctz) const {
|
||||
auto& builder = assert_cast<arrow::StructBuilder&>(*array_builder);
|
||||
auto& struct_column = assert_cast<const ColumnStruct&>(column);
|
||||
for (int r = start; r < end; ++r) {
|
||||
@ -313,7 +313,7 @@ void DataTypeStructSerDe::write_column_to_arrow(const IColumn& column, const Nul
|
||||
for (size_t ei = 0; ei < struct_column.tuple_size(); ++ei) {
|
||||
auto elem_builder = builder.field_builder(ei);
|
||||
elemSerDeSPtrs[ei]->write_column_to_arrow(struct_column.get_column(ei), nullptr,
|
||||
elem_builder, r, r + 1);
|
||||
elem_builder, r, r + 1, ctz);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -149,8 +149,8 @@ public:
|
||||
void read_one_cell_from_jsonb(IColumn& column, const JsonbValue* arg) const override;
|
||||
|
||||
void write_column_to_arrow(const IColumn& column, const NullMap* null_map,
|
||||
arrow::ArrayBuilder* array_builder, int start,
|
||||
int end) const override;
|
||||
arrow::ArrayBuilder* array_builder, int start, int end,
|
||||
const cctz::time_zone& ctz) const override;
|
||||
void read_column_from_arrow(IColumn& column, const arrow::Array* arrow_array, int start,
|
||||
int end, const cctz::time_zone& ctz) const override;
|
||||
|
||||
|
||||
@ -40,6 +40,7 @@
|
||||
#include "olap/olap_common.h"
|
||||
#include "runtime/decimalv2_value.h"
|
||||
#include "runtime/define_primitive_type.h"
|
||||
#include "runtime/runtime_state.h"
|
||||
#include "runtime/types.h"
|
||||
#include "util/arrow/block_convertor.h"
|
||||
#include "util/arrow/row_batch.h"
|
||||
@ -222,7 +223,10 @@ Status VParquetTransformer::_parse_properties() {
|
||||
builder.enable_dictionary();
|
||||
}
|
||||
_parquet_writer_properties = builder.build();
|
||||
_arrow_properties = parquet::ArrowWriterProperties::Builder().store_schema()->build();
|
||||
_arrow_properties = parquet::ArrowWriterProperties::Builder()
|
||||
.enable_deprecated_int96_timestamps()
|
||||
->store_schema()
|
||||
->build();
|
||||
} catch (const parquet::ParquetException& e) {
|
||||
return Status::InternalError("parquet writer parse properties error: {}", e.what());
|
||||
}
|
||||
@ -250,8 +254,8 @@ Status VParquetTransformer::write(const Block& block) {
|
||||
|
||||
// serialize
|
||||
std::shared_ptr<arrow::RecordBatch> result;
|
||||
RETURN_IF_ERROR(
|
||||
convert_to_arrow_batch(block, _arrow_schema, arrow::default_memory_pool(), &result));
|
||||
RETURN_IF_ERROR(convert_to_arrow_batch(block, _arrow_schema, arrow::default_memory_pool(),
|
||||
&result, _state->timezone_obj()));
|
||||
|
||||
auto get_table_res = arrow::Table::FromRecordBatches(result->schema(), {result});
|
||||
if (!get_table_res.ok()) {
|
||||
|
||||
@ -41,6 +41,7 @@ Status VArrowFlightResultWriter::init(RuntimeState* state) {
|
||||
return Status::InternalError("sinker is NULL pointer.");
|
||||
}
|
||||
_is_dry_run = state->query_options().dry_run_query;
|
||||
_timezone_obj = state->timezone_obj();
|
||||
return Status::OK();
|
||||
}
|
||||
|
||||
@ -73,7 +74,7 @@ Status VArrowFlightResultWriter::write(Block& input_block) {
|
||||
{
|
||||
SCOPED_TIMER(_convert_tuple_timer);
|
||||
RETURN_IF_ERROR(convert_to_arrow_batch(block, _arrow_schema, arrow::default_memory_pool(),
|
||||
&result));
|
||||
&result, _timezone_obj));
|
||||
}
|
||||
{
|
||||
SCOPED_TIMER(_result_send_timer);
|
||||
|
||||
@ -18,6 +18,7 @@
|
||||
#pragma once
|
||||
|
||||
#include <arrow/type.h>
|
||||
#include <cctz/time_zone.h>
|
||||
#include <stddef.h>
|
||||
|
||||
#include <memory>
|
||||
@ -73,6 +74,8 @@ private:
|
||||
uint64_t _bytes_sent = 0;
|
||||
|
||||
std::shared_ptr<arrow::Schema> _arrow_schema;
|
||||
|
||||
cctz::time_zone _timezone_obj;
|
||||
};
|
||||
} // namespace vectorized
|
||||
} // namespace doris
|
||||
|
||||
@ -72,6 +72,7 @@ Status MemoryScratchSink::prepare(RuntimeState* state) {
|
||||
_profile = state->obj_pool()->add(new RuntimeProfile(title.str()));
|
||||
init_sink_common_profile();
|
||||
|
||||
_timezone_obj = state->timezone_obj();
|
||||
return Status::OK();
|
||||
}
|
||||
|
||||
@ -89,7 +90,7 @@ Status MemoryScratchSink::send(RuntimeState* state, Block* input_block, bool eos
|
||||
// After expr executed, use recaculated schema as final schema
|
||||
RETURN_IF_ERROR(convert_block_arrow_schema(block, &block_arrow_schema));
|
||||
RETURN_IF_ERROR(convert_to_arrow_batch(block, block_arrow_schema, arrow::default_memory_pool(),
|
||||
&result));
|
||||
&result, _timezone_obj));
|
||||
_queue->blocking_put(result);
|
||||
return Status::OK();
|
||||
}
|
||||
|
||||
@ -17,6 +17,8 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <cctz/time_zone.h>
|
||||
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
@ -64,7 +66,7 @@ public:
|
||||
|
||||
private:
|
||||
Status _prepare_vexpr(RuntimeState* state);
|
||||
|
||||
cctz::time_zone _timezone_obj;
|
||||
BlockQueueSharedPtr _queue;
|
||||
|
||||
// Owned by the RuntimeState.
|
||||
|
||||
@ -496,8 +496,10 @@ void serialize_and_deserialize_arrow_test() {
|
||||
std::cout << "block data: " << block.dump_data(0, row_num) << std::endl;
|
||||
std::cout << "_arrow_schema: " << _arrow_schema->ToString(true) << std::endl;
|
||||
|
||||
static_cast<void>(
|
||||
convert_to_arrow_batch(block, _arrow_schema, arrow::default_memory_pool(), &result));
|
||||
cctz::time_zone timezone_obj;
|
||||
TimezoneUtils::find_cctz_time_zone(TimezoneUtils::default_time_zone, timezone_obj);
|
||||
static_cast<void>(convert_to_arrow_batch(block, _arrow_schema, arrow::default_memory_pool(),
|
||||
&result, timezone_obj));
|
||||
Block new_block = block.clone_empty();
|
||||
EXPECT_TRUE(result != nullptr);
|
||||
std::cout << "result: " << result->ToString() << std::endl;
|
||||
@ -628,8 +630,10 @@ TEST(DataTypeSerDeArrowTest, DataTypeMapNullKeySerDeTest) {
|
||||
std::cout << "block structure: " << block.dump_structure() << std::endl;
|
||||
std::cout << "_arrow_schema: " << _arrow_schema->ToString(true) << std::endl;
|
||||
|
||||
static_cast<void>(
|
||||
convert_to_arrow_batch(block, _arrow_schema, arrow::default_memory_pool(), &result));
|
||||
cctz::time_zone timezone_obj;
|
||||
TimezoneUtils::find_cctz_time_zone(TimezoneUtils::default_time_zone, timezone_obj);
|
||||
static_cast<void>(convert_to_arrow_batch(block, _arrow_schema, arrow::default_memory_pool(),
|
||||
&result, timezone_obj));
|
||||
Block new_block = block.clone_empty();
|
||||
EXPECT_TRUE(result != nullptr);
|
||||
std::cout << "result: " << result->ToString() << std::endl;
|
||||
|
||||
@ -297,15 +297,21 @@ public class OutFileClause {
|
||||
}
|
||||
orcType = "string";
|
||||
break;
|
||||
case DATEV2:
|
||||
orcType = "date";
|
||||
break;
|
||||
case DATETIMEV2:
|
||||
orcType = "timestamp";
|
||||
break;
|
||||
case CHAR:
|
||||
orcType = "char(" + dorisType.getLength() + ")";
|
||||
break;
|
||||
case VARCHAR:
|
||||
orcType = "varchar(" + dorisType.getLength() + ")";
|
||||
break;
|
||||
case LARGEINT:
|
||||
case DATE:
|
||||
case DATETIME:
|
||||
case DATEV2:
|
||||
case CHAR:
|
||||
case VARCHAR:
|
||||
orcType = "string";
|
||||
break;
|
||||
case DECIMALV2:
|
||||
@ -402,74 +408,50 @@ public class OutFileClause {
|
||||
case FLOAT:
|
||||
case DOUBLE:
|
||||
case STRING:
|
||||
if (!schema.second.equals(resultType.getPrimitiveType().toString().toLowerCase())) {
|
||||
throw new AnalysisException("project field type is " + resultType.getPrimitiveType().toString()
|
||||
+ ", should use " + resultType.getPrimitiveType().toString() + ","
|
||||
+ " but the type of column " + i + " is " + schema.second);
|
||||
}
|
||||
checkOrcType(schema.second, resultType.getPrimitiveType().toString().toLowerCase(), true,
|
||||
resultType.getPrimitiveType().toString());
|
||||
break;
|
||||
case DATEV2:
|
||||
checkOrcType(schema.second, "date", true, resultType.getPrimitiveType().toString());
|
||||
break;
|
||||
case DATETIMEV2:
|
||||
if (!schema.second.equals("timestamp")) {
|
||||
throw new AnalysisException("project field type is " + resultType.getPrimitiveType().toString()
|
||||
+ ", should use timestamp, but the definition type of column " + i + " is "
|
||||
+ schema.second);
|
||||
}
|
||||
checkOrcType(schema.second, "timestamp", true, resultType.getPrimitiveType().toString());
|
||||
break;
|
||||
case CHAR:
|
||||
checkOrcType(schema.second, "char", false, resultType.getPrimitiveType().toString());
|
||||
break;
|
||||
case VARCHAR:
|
||||
checkOrcType(schema.second, "varchar", false, resultType.getPrimitiveType().toString());
|
||||
break;
|
||||
case LARGEINT:
|
||||
case DATE:
|
||||
case DATETIME:
|
||||
case DATEV2:
|
||||
case CHAR:
|
||||
case VARCHAR:
|
||||
if (!schema.second.equals("string")) {
|
||||
throw new AnalysisException("project field type is " + resultType.getPrimitiveType().toString()
|
||||
+ ", should use string, but the definition type of column " + i + " is "
|
||||
+ schema.second);
|
||||
}
|
||||
checkOrcType(schema.second, "string", true, resultType.getPrimitiveType().toString());
|
||||
break;
|
||||
case DECIMAL32:
|
||||
case DECIMAL64:
|
||||
case DECIMAL128:
|
||||
case DECIMALV2:
|
||||
if (!schema.second.startsWith("decimal")) {
|
||||
throw new AnalysisException("project field type is " + resultType.getPrimitiveType().toString()
|
||||
+ ", should use string, but the definition type of column " + i + " is "
|
||||
+ schema.second);
|
||||
}
|
||||
checkOrcType(schema.second, "decimal", false, resultType.getPrimitiveType().toString());
|
||||
break;
|
||||
case HLL:
|
||||
case BITMAP:
|
||||
if (ConnectContext.get() != null && ConnectContext.get()
|
||||
.getSessionVariable().isReturnObjectDataAsBinary()) {
|
||||
if (!schema.second.equals("string")) {
|
||||
throw new AnalysisException("project field type is HLL/BITMAP, should use string, "
|
||||
+ "but the definition type of column " + i + " is " + schema.second);
|
||||
}
|
||||
checkOrcType(schema.second, "string", true, resultType.getPrimitiveType().toString());
|
||||
} else {
|
||||
throw new AnalysisException("Orc format does not support column type: "
|
||||
+ resultType.getPrimitiveType());
|
||||
}
|
||||
break;
|
||||
case STRUCT:
|
||||
if (!schema.second.startsWith("struct")) {
|
||||
throw new AnalysisException("project field type is " + resultType.getPrimitiveType().toString()
|
||||
+ ", should use struct, but the definition type of column " + i + " is "
|
||||
+ schema.second);
|
||||
}
|
||||
checkOrcType(schema.second, "struct", false, resultType.getPrimitiveType().toString());
|
||||
break;
|
||||
case MAP:
|
||||
if (!schema.second.startsWith("map")) {
|
||||
throw new AnalysisException("project field type is " + resultType.getPrimitiveType().toString()
|
||||
+ ", should use map, but the definition type of column " + i + " is "
|
||||
+ schema.second);
|
||||
}
|
||||
checkOrcType(schema.second, "map", false, resultType.getPrimitiveType().toString());
|
||||
break;
|
||||
case ARRAY:
|
||||
if (!schema.second.startsWith("array")) {
|
||||
throw new AnalysisException("project field type is " + resultType.getPrimitiveType().toString()
|
||||
+ ", should use array, but the definition type of column " + i + " is "
|
||||
+ schema.second);
|
||||
}
|
||||
checkOrcType(schema.second, "array", false, resultType.getPrimitiveType().toString());
|
||||
break;
|
||||
default:
|
||||
throw new AnalysisException("Orc format does not support column type: "
|
||||
@ -478,6 +460,22 @@ public class OutFileClause {
|
||||
}
|
||||
}
|
||||
|
||||
private void checkOrcType(String orcType, String expectType, boolean isEqual, String dorisType)
|
||||
throws AnalysisException {
|
||||
if (isEqual) {
|
||||
if (orcType.equals(expectType)) {
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
if (orcType.startsWith(expectType)) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
throw new AnalysisException("project field type is " + dorisType
|
||||
+ ", should use " + expectType + ", but the definition type is " + orcType);
|
||||
}
|
||||
|
||||
|
||||
private void analyzeForParquetFormat(List<Expr> resultExprs, List<String> colLabels) throws AnalysisException {
|
||||
if (this.parquetSchemas.isEmpty()) {
|
||||
genParquetColumnName(resultExprs, colLabels);
|
||||
|
||||
@ -102,156 +102,156 @@
|
||||
99 2017-10-01 2017-10-01T00:00 Beijing 99 99 true 99 99 99 99.99 99.99 char99 99
|
||||
|
||||
-- !select_load1 --
|
||||
1 2017-10-01 2017-10-01 00:00:00 Beijing 1 1 true 1 1 1.1 1.1 char1 1 1
|
||||
10 2017-10-01 2017-10-01 00:00:00 Beijing 10 10 true 10 10 10.1 10.1 char10 10 10
|
||||
100 2017-10-01 2017-10-01 00:00:00 \N \N \N \N \N \N \N \N \N \N \N
|
||||
11 2017-10-01 2017-10-01 00:00:00 Beijing 11 11 true 11 11 11.11 11.11 char11 11 11
|
||||
12 2017-10-01 2017-10-01 00:00:00 Beijing 12 12 true 12 12 12.12 12.12 char12 12 12
|
||||
13 2017-10-01 2017-10-01 00:00:00 Beijing 13 13 true 13 13 13.13 13.13 char13 13 13
|
||||
14 2017-10-01 2017-10-01 00:00:00 Beijing 14 14 true 14 14 14.14 14.14 char14 14 14
|
||||
15 2017-10-01 2017-10-01 00:00:00 Beijing 15 15 true 15 15 15.15 15.15 char15 15 15
|
||||
16 2017-10-01 2017-10-01 00:00:00 Beijing 16 16 true 16 16 16.16 16.16 char16 16 16
|
||||
17 2017-10-01 2017-10-01 00:00:00 Beijing 17 17 true 17 17 17.17 17.17 char17 17 17
|
||||
18 2017-10-01 2017-10-01 00:00:00 Beijing 18 18 true 18 18 18.18 18.18 char18 18 18
|
||||
19 2017-10-01 2017-10-01 00:00:00 Beijing 19 19 true 19 19 19.19 19.19 char19 19 19
|
||||
2 2017-10-01 2017-10-01 00:00:00 Beijing 2 2 true 2 2 2.2 2.2 char2 2 2
|
||||
20 2017-10-01 2017-10-01 00:00:00 Beijing 20 20 true 20 20 20.2 20.2 char20 20 20
|
||||
21 2017-10-01 2017-10-01 00:00:00 Beijing 21 21 true 21 21 21.21 21.21 char21 21 21
|
||||
22 2017-10-01 2017-10-01 00:00:00 Beijing 22 22 true 22 22 22.22 22.22 char22 22 22
|
||||
23 2017-10-01 2017-10-01 00:00:00 Beijing 23 23 true 23 23 23.23 23.23 char23 23 23
|
||||
24 2017-10-01 2017-10-01 00:00:00 Beijing 24 24 true 24 24 24.24 24.24 char24 24 24
|
||||
25 2017-10-01 2017-10-01 00:00:00 Beijing 25 25 true 25 25 25.25 25.25 char25 25 25
|
||||
26 2017-10-01 2017-10-01 00:00:00 Beijing 26 26 true 26 26 26.26 26.26 char26 26 26
|
||||
27 2017-10-01 2017-10-01 00:00:00 Beijing 27 27 true 27 27 27.27 27.27 char27 27 27
|
||||
28 2017-10-01 2017-10-01 00:00:00 Beijing 28 28 true 28 28 28.28 28.28 char28 28 28
|
||||
29 2017-10-01 2017-10-01 00:00:00 Beijing 29 29 true 29 29 29.29 29.29 char29 29 29
|
||||
3 2017-10-01 2017-10-01 00:00:00 Beijing 3 3 true 3 3 3.3 3.3 char3 3 3
|
||||
30 2017-10-01 2017-10-01 00:00:00 Beijing 30 30 true 30 30 30.3 30.3 char30 30 30
|
||||
31 2017-10-01 2017-10-01 00:00:00 Beijing 31 31 true 31 31 31.31 31.31 char31 31 31
|
||||
32 2017-10-01 2017-10-01 00:00:00 Beijing 32 32 true 32 32 32.32 32.32 char32 32 32
|
||||
33 2017-10-01 2017-10-01 00:00:00 Beijing 33 33 true 33 33 33.33 33.33 char33 33 33
|
||||
34 2017-10-01 2017-10-01 00:00:00 Beijing 34 34 true 34 34 34.34 34.34 char34 34 34
|
||||
35 2017-10-01 2017-10-01 00:00:00 Beijing 35 35 true 35 35 35.35 35.35 char35 35 35
|
||||
36 2017-10-01 2017-10-01 00:00:00 Beijing 36 36 true 36 36 36.36 36.36 char36 36 36
|
||||
37 2017-10-01 2017-10-01 00:00:00 Beijing 37 37 true 37 37 37.37 37.37 char37 37 37
|
||||
38 2017-10-01 2017-10-01 00:00:00 Beijing 38 38 true 38 38 38.38 38.38 char38 38 38
|
||||
39 2017-10-01 2017-10-01 00:00:00 Beijing 39 39 true 39 39 39.39 39.39 char39 39 39
|
||||
4 2017-10-01 2017-10-01 00:00:00 Beijing 4 4 true 4 4 4.4 4.4 char4 4 4
|
||||
40 2017-10-01 2017-10-01 00:00:00 Beijing 40 40 true 40 40 40.4 40.4 char40 40 40
|
||||
41 2017-10-01 2017-10-01 00:00:00 Beijing 41 41 true 41 41 41.41 41.41 char41 41 41
|
||||
42 2017-10-01 2017-10-01 00:00:00 Beijing 42 42 true 42 42 42.42 42.42 char42 42 42
|
||||
43 2017-10-01 2017-10-01 00:00:00 Beijing 43 43 true 43 43 43.43 43.43 char43 43 43
|
||||
44 2017-10-01 2017-10-01 00:00:00 Beijing 44 44 true 44 44 44.44 44.44 char44 44 44
|
||||
45 2017-10-01 2017-10-01 00:00:00 Beijing 45 45 true 45 45 45.45 45.45 char45 45 45
|
||||
46 2017-10-01 2017-10-01 00:00:00 Beijing 46 46 true 46 46 46.46 46.46 char46 46 46
|
||||
47 2017-10-01 2017-10-01 00:00:00 Beijing 47 47 true 47 47 47.47 47.47 char47 47 47
|
||||
48 2017-10-01 2017-10-01 00:00:00 Beijing 48 48 true 48 48 48.48 48.48 char48 48 48
|
||||
49 2017-10-01 2017-10-01 00:00:00 Beijing 49 49 true 49 49 49.49 49.49 char49 49 49
|
||||
5 2017-10-01 2017-10-01 00:00:00 Beijing 5 5 true 5 5 5.5 5.5 char5 5 5
|
||||
50 2017-10-01 2017-10-01 00:00:00 Beijing 50 50 true 50 50 50.5 50.5 char50 50 50
|
||||
51 2017-10-01 2017-10-01 00:00:00 Beijing 51 51 true 51 51 51.51 51.51 char51 51 51
|
||||
52 2017-10-01 2017-10-01 00:00:00 Beijing 52 52 true 52 52 52.52 52.52 char52 52 52
|
||||
53 2017-10-01 2017-10-01 00:00:00 Beijing 53 53 true 53 53 53.53 53.53 char53 53 53
|
||||
54 2017-10-01 2017-10-01 00:00:00 Beijing 54 54 true 54 54 54.54 54.54 char54 54 54
|
||||
55 2017-10-01 2017-10-01 00:00:00 Beijing 55 55 true 55 55 55.55 55.55 char55 55 55
|
||||
56 2017-10-01 2017-10-01 00:00:00 Beijing 56 56 true 56 56 56.56 56.56 char56 56 56
|
||||
57 2017-10-01 2017-10-01 00:00:00 Beijing 57 57 true 57 57 57.57 57.57 char57 57 57
|
||||
58 2017-10-01 2017-10-01 00:00:00 Beijing 58 58 true 58 58 58.58 58.58 char58 58 58
|
||||
59 2017-10-01 2017-10-01 00:00:00 Beijing 59 59 true 59 59 59.59 59.59 char59 59 59
|
||||
6 2017-10-01 2017-10-01 00:00:00 Beijing 6 6 true 6 6 6.6 6.6 char6 6 6
|
||||
60 2017-10-01 2017-10-01 00:00:00 Beijing 60 60 true 60 60 60.6 60.6 char60 60 60
|
||||
61 2017-10-01 2017-10-01 00:00:00 Beijing 61 61 true 61 61 61.61 61.61 char61 61 61
|
||||
62 2017-10-01 2017-10-01 00:00:00 Beijing 62 62 true 62 62 62.62 62.62 char62 62 62
|
||||
63 2017-10-01 2017-10-01 00:00:00 Beijing 63 63 true 63 63 63.63 63.63 char63 63 63
|
||||
64 2017-10-01 2017-10-01 00:00:00 Beijing 64 64 true 64 64 64.64 64.64 char64 64 64
|
||||
65 2017-10-01 2017-10-01 00:00:00 Beijing 65 65 true 65 65 65.65 65.65 char65 65 65
|
||||
66 2017-10-01 2017-10-01 00:00:00 Beijing 66 66 true 66 66 66.66 66.66 char66 66 66
|
||||
67 2017-10-01 2017-10-01 00:00:00 Beijing 67 67 true 67 67 67.67 67.67 char67 67 67
|
||||
68 2017-10-01 2017-10-01 00:00:00 Beijing 68 68 true 68 68 68.68 68.68 char68 68 68
|
||||
69 2017-10-01 2017-10-01 00:00:00 Beijing 69 69 true 69 69 69.69 69.69 char69 69 69
|
||||
7 2017-10-01 2017-10-01 00:00:00 Beijing 7 7 true 7 7 7.7 7.7 char7 7 7
|
||||
70 2017-10-01 2017-10-01 00:00:00 Beijing 70 70 true 70 70 70.7 70.7 char70 70 70
|
||||
71 2017-10-01 2017-10-01 00:00:00 Beijing 71 71 true 71 71 71.71 71.71 char71 71 71
|
||||
72 2017-10-01 2017-10-01 00:00:00 Beijing 72 72 true 72 72 72.72 72.72 char72 72 72
|
||||
73 2017-10-01 2017-10-01 00:00:00 Beijing 73 73 true 73 73 73.73 73.73 char73 73 73
|
||||
74 2017-10-01 2017-10-01 00:00:00 Beijing 74 74 true 74 74 74.74 74.74 char74 74 74
|
||||
75 2017-10-01 2017-10-01 00:00:00 Beijing 75 75 true 75 75 75.75 75.75 char75 75 75
|
||||
76 2017-10-01 2017-10-01 00:00:00 Beijing 76 76 true 76 76 76.76 76.76 char76 76 76
|
||||
77 2017-10-01 2017-10-01 00:00:00 Beijing 77 77 true 77 77 77.77 77.77 char77 77 77
|
||||
78 2017-10-01 2017-10-01 00:00:00 Beijing 78 78 true 78 78 78.78 78.78 char78 78 78
|
||||
79 2017-10-01 2017-10-01 00:00:00 Beijing 79 79 true 79 79 79.79 79.79 char79 79 79
|
||||
8 2017-10-01 2017-10-01 00:00:00 Beijing 8 8 true 8 8 8.8 8.8 char8 8 8
|
||||
80 2017-10-01 2017-10-01 00:00:00 Beijing 80 80 true 80 80 80.8 80.8 char80 80 80
|
||||
81 2017-10-01 2017-10-01 00:00:00 Beijing 81 81 true 81 81 81.81 81.81 char81 81 81
|
||||
82 2017-10-01 2017-10-01 00:00:00 Beijing 82 82 true 82 82 82.82 82.82 char82 82 82
|
||||
83 2017-10-01 2017-10-01 00:00:00 Beijing 83 83 true 83 83 83.83 83.83 char83 83 83
|
||||
84 2017-10-01 2017-10-01 00:00:00 Beijing 84 84 true 84 84 84.84 84.84 char84 84 84
|
||||
85 2017-10-01 2017-10-01 00:00:00 Beijing 85 85 true 85 85 85.85 85.85 char85 85 85
|
||||
86 2017-10-01 2017-10-01 00:00:00 Beijing 86 86 true 86 86 86.86 86.86 char86 86 86
|
||||
87 2017-10-01 2017-10-01 00:00:00 Beijing 87 87 true 87 87 87.87 87.87 char87 87 87
|
||||
88 2017-10-01 2017-10-01 00:00:00 Beijing 88 88 true 88 88 88.88 88.88 char88 88 88
|
||||
89 2017-10-01 2017-10-01 00:00:00 Beijing 89 89 true 89 89 89.89 89.89 char89 89 89
|
||||
9 2017-10-01 2017-10-01 00:00:00 Beijing 9 9 true 9 9 9.9 9.9 char9 9 9
|
||||
90 2017-10-01 2017-10-01 00:00:00 Beijing 90 90 true 90 90 90.9 90.9 char90 90 90
|
||||
91 2017-10-01 2017-10-01 00:00:00 Beijing 91 91 true 91 91 91.91 91.91 char91 91 91
|
||||
92 2017-10-01 2017-10-01 00:00:00 Beijing 92 92 true 92 92 92.92 92.92 char92 92 92
|
||||
93 2017-10-01 2017-10-01 00:00:00 Beijing 93 93 true 93 93 93.93 93.93 char93 93 93
|
||||
94 2017-10-01 2017-10-01 00:00:00 Beijing 94 94 true 94 94 94.94 94.94 char94 94 94
|
||||
95 2017-10-01 2017-10-01 00:00:00 Beijing 95 95 true 95 95 95.95 95.95 char95 95 95
|
||||
96 2017-10-01 2017-10-01 00:00:00 Beijing 96 96 true 96 96 96.96 96.96 char96 96 96
|
||||
97 2017-10-01 2017-10-01 00:00:00 Beijing 97 97 true 97 97 97.97 97.97 char97 97 97
|
||||
98 2017-10-01 2017-10-01 00:00:00 Beijing 98 98 true 98 98 98.98 98.98 char98 98 98
|
||||
99 2017-10-01 2017-10-01 00:00:00 Beijing 99 99 true 99 99 99.99 99.99 char99 99 99
|
||||
1 2017-10-01 2017-10-01T00:00 Beijing 1 1 true 1 1 1.1 1.1 char1 1 1
|
||||
10 2017-10-01 2017-10-01T00:00 Beijing 10 10 true 10 10 10.1 10.1 char10 10 10
|
||||
100 2017-10-01 2017-10-01T00:00 \N \N \N \N \N \N \N \N \N \N \N
|
||||
11 2017-10-01 2017-10-01T00:00 Beijing 11 11 true 11 11 11.11 11.11 char11 11 11
|
||||
12 2017-10-01 2017-10-01T00:00 Beijing 12 12 true 12 12 12.12 12.12 char12 12 12
|
||||
13 2017-10-01 2017-10-01T00:00 Beijing 13 13 true 13 13 13.13 13.13 char13 13 13
|
||||
14 2017-10-01 2017-10-01T00:00 Beijing 14 14 true 14 14 14.14 14.14 char14 14 14
|
||||
15 2017-10-01 2017-10-01T00:00 Beijing 15 15 true 15 15 15.15 15.15 char15 15 15
|
||||
16 2017-10-01 2017-10-01T00:00 Beijing 16 16 true 16 16 16.16 16.16 char16 16 16
|
||||
17 2017-10-01 2017-10-01T00:00 Beijing 17 17 true 17 17 17.17 17.17 char17 17 17
|
||||
18 2017-10-01 2017-10-01T00:00 Beijing 18 18 true 18 18 18.18 18.18 char18 18 18
|
||||
19 2017-10-01 2017-10-01T00:00 Beijing 19 19 true 19 19 19.19 19.19 char19 19 19
|
||||
2 2017-10-01 2017-10-01T00:00 Beijing 2 2 true 2 2 2.2 2.2 char2 2 2
|
||||
20 2017-10-01 2017-10-01T00:00 Beijing 20 20 true 20 20 20.2 20.2 char20 20 20
|
||||
21 2017-10-01 2017-10-01T00:00 Beijing 21 21 true 21 21 21.21 21.21 char21 21 21
|
||||
22 2017-10-01 2017-10-01T00:00 Beijing 22 22 true 22 22 22.22 22.22 char22 22 22
|
||||
23 2017-10-01 2017-10-01T00:00 Beijing 23 23 true 23 23 23.23 23.23 char23 23 23
|
||||
24 2017-10-01 2017-10-01T00:00 Beijing 24 24 true 24 24 24.24 24.24 char24 24 24
|
||||
25 2017-10-01 2017-10-01T00:00 Beijing 25 25 true 25 25 25.25 25.25 char25 25 25
|
||||
26 2017-10-01 2017-10-01T00:00 Beijing 26 26 true 26 26 26.26 26.26 char26 26 26
|
||||
27 2017-10-01 2017-10-01T00:00 Beijing 27 27 true 27 27 27.27 27.27 char27 27 27
|
||||
28 2017-10-01 2017-10-01T00:00 Beijing 28 28 true 28 28 28.28 28.28 char28 28 28
|
||||
29 2017-10-01 2017-10-01T00:00 Beijing 29 29 true 29 29 29.29 29.29 char29 29 29
|
||||
3 2017-10-01 2017-10-01T00:00 Beijing 3 3 true 3 3 3.3 3.3 char3 3 3
|
||||
30 2017-10-01 2017-10-01T00:00 Beijing 30 30 true 30 30 30.3 30.3 char30 30 30
|
||||
31 2017-10-01 2017-10-01T00:00 Beijing 31 31 true 31 31 31.31 31.31 char31 31 31
|
||||
32 2017-10-01 2017-10-01T00:00 Beijing 32 32 true 32 32 32.32 32.32 char32 32 32
|
||||
33 2017-10-01 2017-10-01T00:00 Beijing 33 33 true 33 33 33.33 33.33 char33 33 33
|
||||
34 2017-10-01 2017-10-01T00:00 Beijing 34 34 true 34 34 34.34 34.34 char34 34 34
|
||||
35 2017-10-01 2017-10-01T00:00 Beijing 35 35 true 35 35 35.35 35.35 char35 35 35
|
||||
36 2017-10-01 2017-10-01T00:00 Beijing 36 36 true 36 36 36.36 36.36 char36 36 36
|
||||
37 2017-10-01 2017-10-01T00:00 Beijing 37 37 true 37 37 37.37 37.37 char37 37 37
|
||||
38 2017-10-01 2017-10-01T00:00 Beijing 38 38 true 38 38 38.38 38.38 char38 38 38
|
||||
39 2017-10-01 2017-10-01T00:00 Beijing 39 39 true 39 39 39.39 39.39 char39 39 39
|
||||
4 2017-10-01 2017-10-01T00:00 Beijing 4 4 true 4 4 4.4 4.4 char4 4 4
|
||||
40 2017-10-01 2017-10-01T00:00 Beijing 40 40 true 40 40 40.4 40.4 char40 40 40
|
||||
41 2017-10-01 2017-10-01T00:00 Beijing 41 41 true 41 41 41.41 41.41 char41 41 41
|
||||
42 2017-10-01 2017-10-01T00:00 Beijing 42 42 true 42 42 42.42 42.42 char42 42 42
|
||||
43 2017-10-01 2017-10-01T00:00 Beijing 43 43 true 43 43 43.43 43.43 char43 43 43
|
||||
44 2017-10-01 2017-10-01T00:00 Beijing 44 44 true 44 44 44.44 44.44 char44 44 44
|
||||
45 2017-10-01 2017-10-01T00:00 Beijing 45 45 true 45 45 45.45 45.45 char45 45 45
|
||||
46 2017-10-01 2017-10-01T00:00 Beijing 46 46 true 46 46 46.46 46.46 char46 46 46
|
||||
47 2017-10-01 2017-10-01T00:00 Beijing 47 47 true 47 47 47.47 47.47 char47 47 47
|
||||
48 2017-10-01 2017-10-01T00:00 Beijing 48 48 true 48 48 48.48 48.48 char48 48 48
|
||||
49 2017-10-01 2017-10-01T00:00 Beijing 49 49 true 49 49 49.49 49.49 char49 49 49
|
||||
5 2017-10-01 2017-10-01T00:00 Beijing 5 5 true 5 5 5.5 5.5 char5 5 5
|
||||
50 2017-10-01 2017-10-01T00:00 Beijing 50 50 true 50 50 50.5 50.5 char50 50 50
|
||||
51 2017-10-01 2017-10-01T00:00 Beijing 51 51 true 51 51 51.51 51.51 char51 51 51
|
||||
52 2017-10-01 2017-10-01T00:00 Beijing 52 52 true 52 52 52.52 52.52 char52 52 52
|
||||
53 2017-10-01 2017-10-01T00:00 Beijing 53 53 true 53 53 53.53 53.53 char53 53 53
|
||||
54 2017-10-01 2017-10-01T00:00 Beijing 54 54 true 54 54 54.54 54.54 char54 54 54
|
||||
55 2017-10-01 2017-10-01T00:00 Beijing 55 55 true 55 55 55.55 55.55 char55 55 55
|
||||
56 2017-10-01 2017-10-01T00:00 Beijing 56 56 true 56 56 56.56 56.56 char56 56 56
|
||||
57 2017-10-01 2017-10-01T00:00 Beijing 57 57 true 57 57 57.57 57.57 char57 57 57
|
||||
58 2017-10-01 2017-10-01T00:00 Beijing 58 58 true 58 58 58.58 58.58 char58 58 58
|
||||
59 2017-10-01 2017-10-01T00:00 Beijing 59 59 true 59 59 59.59 59.59 char59 59 59
|
||||
6 2017-10-01 2017-10-01T00:00 Beijing 6 6 true 6 6 6.6 6.6 char6 6 6
|
||||
60 2017-10-01 2017-10-01T00:00 Beijing 60 60 true 60 60 60.6 60.6 char60 60 60
|
||||
61 2017-10-01 2017-10-01T00:00 Beijing 61 61 true 61 61 61.61 61.61 char61 61 61
|
||||
62 2017-10-01 2017-10-01T00:00 Beijing 62 62 true 62 62 62.62 62.62 char62 62 62
|
||||
63 2017-10-01 2017-10-01T00:00 Beijing 63 63 true 63 63 63.63 63.63 char63 63 63
|
||||
64 2017-10-01 2017-10-01T00:00 Beijing 64 64 true 64 64 64.64 64.64 char64 64 64
|
||||
65 2017-10-01 2017-10-01T00:00 Beijing 65 65 true 65 65 65.65 65.65 char65 65 65
|
||||
66 2017-10-01 2017-10-01T00:00 Beijing 66 66 true 66 66 66.66 66.66 char66 66 66
|
||||
67 2017-10-01 2017-10-01T00:00 Beijing 67 67 true 67 67 67.67 67.67 char67 67 67
|
||||
68 2017-10-01 2017-10-01T00:00 Beijing 68 68 true 68 68 68.68 68.68 char68 68 68
|
||||
69 2017-10-01 2017-10-01T00:00 Beijing 69 69 true 69 69 69.69 69.69 char69 69 69
|
||||
7 2017-10-01 2017-10-01T00:00 Beijing 7 7 true 7 7 7.7 7.7 char7 7 7
|
||||
70 2017-10-01 2017-10-01T00:00 Beijing 70 70 true 70 70 70.7 70.7 char70 70 70
|
||||
71 2017-10-01 2017-10-01T00:00 Beijing 71 71 true 71 71 71.71 71.71 char71 71 71
|
||||
72 2017-10-01 2017-10-01T00:00 Beijing 72 72 true 72 72 72.72 72.72 char72 72 72
|
||||
73 2017-10-01 2017-10-01T00:00 Beijing 73 73 true 73 73 73.73 73.73 char73 73 73
|
||||
74 2017-10-01 2017-10-01T00:00 Beijing 74 74 true 74 74 74.74 74.74 char74 74 74
|
||||
75 2017-10-01 2017-10-01T00:00 Beijing 75 75 true 75 75 75.75 75.75 char75 75 75
|
||||
76 2017-10-01 2017-10-01T00:00 Beijing 76 76 true 76 76 76.76 76.76 char76 76 76
|
||||
77 2017-10-01 2017-10-01T00:00 Beijing 77 77 true 77 77 77.77 77.77 char77 77 77
|
||||
78 2017-10-01 2017-10-01T00:00 Beijing 78 78 true 78 78 78.78 78.78 char78 78 78
|
||||
79 2017-10-01 2017-10-01T00:00 Beijing 79 79 true 79 79 79.79 79.79 char79 79 79
|
||||
8 2017-10-01 2017-10-01T00:00 Beijing 8 8 true 8 8 8.8 8.8 char8 8 8
|
||||
80 2017-10-01 2017-10-01T00:00 Beijing 80 80 true 80 80 80.8 80.8 char80 80 80
|
||||
81 2017-10-01 2017-10-01T00:00 Beijing 81 81 true 81 81 81.81 81.81 char81 81 81
|
||||
82 2017-10-01 2017-10-01T00:00 Beijing 82 82 true 82 82 82.82 82.82 char82 82 82
|
||||
83 2017-10-01 2017-10-01T00:00 Beijing 83 83 true 83 83 83.83 83.83 char83 83 83
|
||||
84 2017-10-01 2017-10-01T00:00 Beijing 84 84 true 84 84 84.84 84.84 char84 84 84
|
||||
85 2017-10-01 2017-10-01T00:00 Beijing 85 85 true 85 85 85.85 85.85 char85 85 85
|
||||
86 2017-10-01 2017-10-01T00:00 Beijing 86 86 true 86 86 86.86 86.86 char86 86 86
|
||||
87 2017-10-01 2017-10-01T00:00 Beijing 87 87 true 87 87 87.87 87.87 char87 87 87
|
||||
88 2017-10-01 2017-10-01T00:00 Beijing 88 88 true 88 88 88.88 88.88 char88 88 88
|
||||
89 2017-10-01 2017-10-01T00:00 Beijing 89 89 true 89 89 89.89 89.89 char89 89 89
|
||||
9 2017-10-01 2017-10-01T00:00 Beijing 9 9 true 9 9 9.9 9.9 char9 9 9
|
||||
90 2017-10-01 2017-10-01T00:00 Beijing 90 90 true 90 90 90.9 90.9 char90 90 90
|
||||
91 2017-10-01 2017-10-01T00:00 Beijing 91 91 true 91 91 91.91 91.91 char91 91 91
|
||||
92 2017-10-01 2017-10-01T00:00 Beijing 92 92 true 92 92 92.92 92.92 char92 92 92
|
||||
93 2017-10-01 2017-10-01T00:00 Beijing 93 93 true 93 93 93.93 93.93 char93 93 93
|
||||
94 2017-10-01 2017-10-01T00:00 Beijing 94 94 true 94 94 94.94 94.94 char94 94 94
|
||||
95 2017-10-01 2017-10-01T00:00 Beijing 95 95 true 95 95 95.95 95.95 char95 95 95
|
||||
96 2017-10-01 2017-10-01T00:00 Beijing 96 96 true 96 96 96.96 96.96 char96 96 96
|
||||
97 2017-10-01 2017-10-01T00:00 Beijing 97 97 true 97 97 97.97 97.97 char97 97 97
|
||||
98 2017-10-01 2017-10-01T00:00 Beijing 98 98 true 98 98 98.98 98.98 char98 98 98
|
||||
99 2017-10-01 2017-10-01T00:00 Beijing 99 99 true 99 99 99.99 99.99 char99 99 99
|
||||
|
||||
-- !select_load1 --
|
||||
20 2017-10-01 2017-10-01 00:00:00 Beijing 20 20 true 20 20 20.2 20.2 char20 20 20
|
||||
21 2017-10-01 2017-10-01 00:00:00 Beijing 21 21 true 21 21 21.21 21.21 char21 21 21
|
||||
22 2017-10-01 2017-10-01 00:00:00 Beijing 22 22 true 22 22 22.22 22.22 char22 22 22
|
||||
23 2017-10-01 2017-10-01 00:00:00 Beijing 23 23 true 23 23 23.23 23.23 char23 23 23
|
||||
24 2017-10-01 2017-10-01 00:00:00 Beijing 24 24 true 24 24 24.24 24.24 char24 24 24
|
||||
25 2017-10-01 2017-10-01 00:00:00 Beijing 25 25 true 25 25 25.25 25.25 char25 25 25
|
||||
26 2017-10-01 2017-10-01 00:00:00 Beijing 26 26 true 26 26 26.26 26.26 char26 26 26
|
||||
27 2017-10-01 2017-10-01 00:00:00 Beijing 27 27 true 27 27 27.27 27.27 char27 27 27
|
||||
28 2017-10-01 2017-10-01 00:00:00 Beijing 28 28 true 28 28 28.28 28.28 char28 28 28
|
||||
29 2017-10-01 2017-10-01 00:00:00 Beijing 29 29 true 29 29 29.29 29.29 char29 29 29
|
||||
30 2017-10-01 2017-10-01 00:00:00 Beijing 30 30 true 30 30 30.3 30.3 char30 30 30
|
||||
31 2017-10-01 2017-10-01 00:00:00 Beijing 31 31 true 31 31 31.31 31.31 char31 31 31
|
||||
32 2017-10-01 2017-10-01 00:00:00 Beijing 32 32 true 32 32 32.32 32.32 char32 32 32
|
||||
33 2017-10-01 2017-10-01 00:00:00 Beijing 33 33 true 33 33 33.33 33.33 char33 33 33
|
||||
34 2017-10-01 2017-10-01 00:00:00 Beijing 34 34 true 34 34 34.34 34.34 char34 34 34
|
||||
35 2017-10-01 2017-10-01 00:00:00 Beijing 35 35 true 35 35 35.35 35.35 char35 35 35
|
||||
36 2017-10-01 2017-10-01 00:00:00 Beijing 36 36 true 36 36 36.36 36.36 char36 36 36
|
||||
37 2017-10-01 2017-10-01 00:00:00 Beijing 37 37 true 37 37 37.37 37.37 char37 37 37
|
||||
38 2017-10-01 2017-10-01 00:00:00 Beijing 38 38 true 38 38 38.38 38.38 char38 38 38
|
||||
39 2017-10-01 2017-10-01 00:00:00 Beijing 39 39 true 39 39 39.39 39.39 char39 39 39
|
||||
40 2017-10-01 2017-10-01 00:00:00 Beijing 40 40 true 40 40 40.4 40.4 char40 40 40
|
||||
41 2017-10-01 2017-10-01 00:00:00 Beijing 41 41 true 41 41 41.41 41.41 char41 41 41
|
||||
42 2017-10-01 2017-10-01 00:00:00 Beijing 42 42 true 42 42 42.42 42.42 char42 42 42
|
||||
43 2017-10-01 2017-10-01 00:00:00 Beijing 43 43 true 43 43 43.43 43.43 char43 43 43
|
||||
44 2017-10-01 2017-10-01 00:00:00 Beijing 44 44 true 44 44 44.44 44.44 char44 44 44
|
||||
45 2017-10-01 2017-10-01 00:00:00 Beijing 45 45 true 45 45 45.45 45.45 char45 45 45
|
||||
46 2017-10-01 2017-10-01 00:00:00 Beijing 46 46 true 46 46 46.46 46.46 char46 46 46
|
||||
47 2017-10-01 2017-10-01 00:00:00 Beijing 47 47 true 47 47 47.47 47.47 char47 47 47
|
||||
48 2017-10-01 2017-10-01 00:00:00 Beijing 48 48 true 48 48 48.48 48.48 char48 48 48
|
||||
49 2017-10-01 2017-10-01 00:00:00 Beijing 49 49 true 49 49 49.49 49.49 char49 49 49
|
||||
50 2017-10-01 2017-10-01 00:00:00 Beijing 50 50 true 50 50 50.5 50.5 char50 50 50
|
||||
51 2017-10-01 2017-10-01 00:00:00 Beijing 51 51 true 51 51 51.51 51.51 char51 51 51
|
||||
52 2017-10-01 2017-10-01 00:00:00 Beijing 52 52 true 52 52 52.52 52.52 char52 52 52
|
||||
53 2017-10-01 2017-10-01 00:00:00 Beijing 53 53 true 53 53 53.53 53.53 char53 53 53
|
||||
54 2017-10-01 2017-10-01 00:00:00 Beijing 54 54 true 54 54 54.54 54.54 char54 54 54
|
||||
55 2017-10-01 2017-10-01 00:00:00 Beijing 55 55 true 55 55 55.55 55.55 char55 55 55
|
||||
56 2017-10-01 2017-10-01 00:00:00 Beijing 56 56 true 56 56 56.56 56.56 char56 56 56
|
||||
57 2017-10-01 2017-10-01 00:00:00 Beijing 57 57 true 57 57 57.57 57.57 char57 57 57
|
||||
58 2017-10-01 2017-10-01 00:00:00 Beijing 58 58 true 58 58 58.58 58.58 char58 58 58
|
||||
59 2017-10-01 2017-10-01 00:00:00 Beijing 59 59 true 59 59 59.59 59.59 char59 59 59
|
||||
60 2017-10-01 2017-10-01 00:00:00 Beijing 60 60 true 60 60 60.6 60.6 char60 60 60
|
||||
61 2017-10-01 2017-10-01 00:00:00 Beijing 61 61 true 61 61 61.61 61.61 char61 61 61
|
||||
62 2017-10-01 2017-10-01 00:00:00 Beijing 62 62 true 62 62 62.62 62.62 char62 62 62
|
||||
63 2017-10-01 2017-10-01 00:00:00 Beijing 63 63 true 63 63 63.63 63.63 char63 63 63
|
||||
64 2017-10-01 2017-10-01 00:00:00 Beijing 64 64 true 64 64 64.64 64.64 char64 64 64
|
||||
65 2017-10-01 2017-10-01 00:00:00 Beijing 65 65 true 65 65 65.65 65.65 char65 65 65
|
||||
66 2017-10-01 2017-10-01 00:00:00 Beijing 66 66 true 66 66 66.66 66.66 char66 66 66
|
||||
67 2017-10-01 2017-10-01 00:00:00 Beijing 67 67 true 67 67 67.67 67.67 char67 67 67
|
||||
68 2017-10-01 2017-10-01 00:00:00 Beijing 68 68 true 68 68 68.68 68.68 char68 68 68
|
||||
69 2017-10-01 2017-10-01 00:00:00 Beijing 69 69 true 69 69 69.69 69.69 char69 69 69
|
||||
20 2017-10-01 2017-10-01T00:00 Beijing 20 20 true 20 20 20.2 20.2 char20 20 20
|
||||
21 2017-10-01 2017-10-01T00:00 Beijing 21 21 true 21 21 21.21 21.21 char21 21 21
|
||||
22 2017-10-01 2017-10-01T00:00 Beijing 22 22 true 22 22 22.22 22.22 char22 22 22
|
||||
23 2017-10-01 2017-10-01T00:00 Beijing 23 23 true 23 23 23.23 23.23 char23 23 23
|
||||
24 2017-10-01 2017-10-01T00:00 Beijing 24 24 true 24 24 24.24 24.24 char24 24 24
|
||||
25 2017-10-01 2017-10-01T00:00 Beijing 25 25 true 25 25 25.25 25.25 char25 25 25
|
||||
26 2017-10-01 2017-10-01T00:00 Beijing 26 26 true 26 26 26.26 26.26 char26 26 26
|
||||
27 2017-10-01 2017-10-01T00:00 Beijing 27 27 true 27 27 27.27 27.27 char27 27 27
|
||||
28 2017-10-01 2017-10-01T00:00 Beijing 28 28 true 28 28 28.28 28.28 char28 28 28
|
||||
29 2017-10-01 2017-10-01T00:00 Beijing 29 29 true 29 29 29.29 29.29 char29 29 29
|
||||
30 2017-10-01 2017-10-01T00:00 Beijing 30 30 true 30 30 30.3 30.3 char30 30 30
|
||||
31 2017-10-01 2017-10-01T00:00 Beijing 31 31 true 31 31 31.31 31.31 char31 31 31
|
||||
32 2017-10-01 2017-10-01T00:00 Beijing 32 32 true 32 32 32.32 32.32 char32 32 32
|
||||
33 2017-10-01 2017-10-01T00:00 Beijing 33 33 true 33 33 33.33 33.33 char33 33 33
|
||||
34 2017-10-01 2017-10-01T00:00 Beijing 34 34 true 34 34 34.34 34.34 char34 34 34
|
||||
35 2017-10-01 2017-10-01T00:00 Beijing 35 35 true 35 35 35.35 35.35 char35 35 35
|
||||
36 2017-10-01 2017-10-01T00:00 Beijing 36 36 true 36 36 36.36 36.36 char36 36 36
|
||||
37 2017-10-01 2017-10-01T00:00 Beijing 37 37 true 37 37 37.37 37.37 char37 37 37
|
||||
38 2017-10-01 2017-10-01T00:00 Beijing 38 38 true 38 38 38.38 38.38 char38 38 38
|
||||
39 2017-10-01 2017-10-01T00:00 Beijing 39 39 true 39 39 39.39 39.39 char39 39 39
|
||||
40 2017-10-01 2017-10-01T00:00 Beijing 40 40 true 40 40 40.4 40.4 char40 40 40
|
||||
41 2017-10-01 2017-10-01T00:00 Beijing 41 41 true 41 41 41.41 41.41 char41 41 41
|
||||
42 2017-10-01 2017-10-01T00:00 Beijing 42 42 true 42 42 42.42 42.42 char42 42 42
|
||||
43 2017-10-01 2017-10-01T00:00 Beijing 43 43 true 43 43 43.43 43.43 char43 43 43
|
||||
44 2017-10-01 2017-10-01T00:00 Beijing 44 44 true 44 44 44.44 44.44 char44 44 44
|
||||
45 2017-10-01 2017-10-01T00:00 Beijing 45 45 true 45 45 45.45 45.45 char45 45 45
|
||||
46 2017-10-01 2017-10-01T00:00 Beijing 46 46 true 46 46 46.46 46.46 char46 46 46
|
||||
47 2017-10-01 2017-10-01T00:00 Beijing 47 47 true 47 47 47.47 47.47 char47 47 47
|
||||
48 2017-10-01 2017-10-01T00:00 Beijing 48 48 true 48 48 48.48 48.48 char48 48 48
|
||||
49 2017-10-01 2017-10-01T00:00 Beijing 49 49 true 49 49 49.49 49.49 char49 49 49
|
||||
50 2017-10-01 2017-10-01T00:00 Beijing 50 50 true 50 50 50.5 50.5 char50 50 50
|
||||
51 2017-10-01 2017-10-01T00:00 Beijing 51 51 true 51 51 51.51 51.51 char51 51 51
|
||||
52 2017-10-01 2017-10-01T00:00 Beijing 52 52 true 52 52 52.52 52.52 char52 52 52
|
||||
53 2017-10-01 2017-10-01T00:00 Beijing 53 53 true 53 53 53.53 53.53 char53 53 53
|
||||
54 2017-10-01 2017-10-01T00:00 Beijing 54 54 true 54 54 54.54 54.54 char54 54 54
|
||||
55 2017-10-01 2017-10-01T00:00 Beijing 55 55 true 55 55 55.55 55.55 char55 55 55
|
||||
56 2017-10-01 2017-10-01T00:00 Beijing 56 56 true 56 56 56.56 56.56 char56 56 56
|
||||
57 2017-10-01 2017-10-01T00:00 Beijing 57 57 true 57 57 57.57 57.57 char57 57 57
|
||||
58 2017-10-01 2017-10-01T00:00 Beijing 58 58 true 58 58 58.58 58.58 char58 58 58
|
||||
59 2017-10-01 2017-10-01T00:00 Beijing 59 59 true 59 59 59.59 59.59 char59 59 59
|
||||
60 2017-10-01 2017-10-01T00:00 Beijing 60 60 true 60 60 60.6 60.6 char60 60 60
|
||||
61 2017-10-01 2017-10-01T00:00 Beijing 61 61 true 61 61 61.61 61.61 char61 61 61
|
||||
62 2017-10-01 2017-10-01T00:00 Beijing 62 62 true 62 62 62.62 62.62 char62 62 62
|
||||
63 2017-10-01 2017-10-01T00:00 Beijing 63 63 true 63 63 63.63 63.63 char63 63 63
|
||||
64 2017-10-01 2017-10-01T00:00 Beijing 64 64 true 64 64 64.64 64.64 char64 64 64
|
||||
65 2017-10-01 2017-10-01T00:00 Beijing 65 65 true 65 65 65.65 65.65 char65 65 65
|
||||
66 2017-10-01 2017-10-01T00:00 Beijing 66 66 true 66 66 66.66 66.66 char66 66 66
|
||||
67 2017-10-01 2017-10-01T00:00 Beijing 67 67 true 67 67 67.67 67.67 char67 67 67
|
||||
68 2017-10-01 2017-10-01T00:00 Beijing 68 68 true 68 68 68.68 68.68 char68 68 68
|
||||
69 2017-10-01 2017-10-01T00:00 Beijing 69 69 true 69 69 69.69 69.69 char69 69 69
|
||||
|
||||
|
||||
@ -199,7 +199,7 @@ __max_0 INT Yes false \N NONE
|
||||
9 id not exist
|
||||
|
||||
-- !desc_s3 --
|
||||
__case_expr_1 TEXT Yes false \N NONE
|
||||
__case_expr_1 VARCHAR(65533) Yes false \N NONE
|
||||
id INT Yes false \N NONE
|
||||
|
||||
-- !select_base1 --
|
||||
@ -233,7 +233,7 @@ __binary_predicate_4 BOOLEAN Yes false \N NONE
|
||||
__cast_expr_3 BIGINT Yes false \N NONE
|
||||
__in_predicate_6 BOOLEAN Yes false \N NONE
|
||||
__literal_1 TINYINT Yes false \N NONE
|
||||
__literal_2 TEXT Yes false \N NONE
|
||||
__literal_2 VARCHAR(65533) Yes false \N NONE
|
||||
id INT Yes false \N NONE
|
||||
|
||||
-- !select_base1 --
|
||||
|
||||
@ -60,12 +60,12 @@
|
||||
7 doris7 [null, null, null, "2017-10-01 00:00:00", "2011-10-01 01:23:59"]
|
||||
|
||||
-- !select_load_datetime --
|
||||
1 doris1 ["2017-10-01 00:00:00", "2011-10-01 01:23:59"]
|
||||
2 doris2 ["2017-10-01 00:00:00", "2011-10-01 01:23:59"]
|
||||
1 doris1 ["2017-10-01 00:00:00.000000", "2011-10-01 01:23:59.000000"]
|
||||
2 doris2 ["2017-10-01 00:00:00.000000", "2011-10-01 01:23:59.000000"]
|
||||
3 doris3 []
|
||||
5 doris5 ["2017-10-01 00:00:00", null, "2017-10-01 00:00:00"]
|
||||
5 doris5 ["2017-10-01 00:00:00.000000", null, "2017-10-01 00:00:00.000000"]
|
||||
6 doris6 [null, null, null]
|
||||
7 doris7 [null, null, null, "2017-10-01 00:00:00", "2011-10-01 01:23:59"]
|
||||
7 doris7 [null, null, null, "2017-10-01 00:00:00.000000", "2011-10-01 01:23:59.000000"]
|
||||
|
||||
-- !select_base_varchar --
|
||||
1 doris1 ["2017-10-01 00:00:00", "2011-10-01 01:23:59"]
|
||||
|
||||
@ -116,14 +116,14 @@
|
||||
10 doris_10 {"user_id": 10, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": null, "age": null, "sex": null, "bool_col": null, "int_col": null, "bigint_col": null, "largeint_col": null, "float_col": null, "double_col": null, "char_col": null, "decimal_col": null}
|
||||
|
||||
-- !select_load7 --
|
||||
1 doris_1 {"user_id": 1, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 1, "sex": 1, "bool_col": 1, "int_col": 1, "bigint_col": 1, "largeint_col": "1", "float_col": 1.1, "double_col": 1.1, "char_col": "char1_1234", "decimal_col": 1}
|
||||
2 doris_2 {"user_id": 2, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 2, "sex": 2, "bool_col": 1, "int_col": 2, "bigint_col": 2, "largeint_col": "2", "float_col": 2.2, "double_col": 2.2, "char_col": "char2_1234", "decimal_col": 2}
|
||||
3 doris_3 {"user_id": 3, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 3, "sex": 3, "bool_col": 1, "int_col": 3, "bigint_col": 3, "largeint_col": "3", "float_col": 3.3, "double_col": 3.3, "char_col": "char3_1234", "decimal_col": 3}
|
||||
4 doris_4 {"user_id": 4, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 4, "sex": 4, "bool_col": 1, "int_col": 4, "bigint_col": 4, "largeint_col": "4", "float_col": 4.4, "double_col": 4.4, "char_col": "char4_1234", "decimal_col": 4}
|
||||
5 doris_5 {"user_id": 5, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 5, "sex": 5, "bool_col": 1, "int_col": 5, "bigint_col": 5, "largeint_col": "5", "float_col": 5.5, "double_col": 5.5, "char_col": "char5_1234", "decimal_col": 5}
|
||||
6 doris_6 {"user_id": 6, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 6, "sex": 6, "bool_col": 1, "int_col": 6, "bigint_col": 6, "largeint_col": "6", "float_col": 6.6, "double_col": 6.6, "char_col": "char6_1234", "decimal_col": 6}
|
||||
7 doris_7 {"user_id": 7, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 7, "sex": 7, "bool_col": 1, "int_col": 7, "bigint_col": 7, "largeint_col": "7", "float_col": 7.7, "double_col": 7.7, "char_col": "char7_1234", "decimal_col": 7}
|
||||
8 doris_8 {"user_id": 8, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 8, "sex": 8, "bool_col": 1, "int_col": 8, "bigint_col": 8, "largeint_col": "8", "float_col": 8.8, "double_col": 8.8, "char_col": "char8_1234", "decimal_col": 8}
|
||||
9 doris_9 {"user_id": 9, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 9, "sex": 9, "bool_col": 1, "int_col": 9, "bigint_col": 9, "largeint_col": "9", "float_col": 9.9, "double_col": 9.9, "char_col": "char9_1234", "decimal_col": 9}
|
||||
10 doris_10 {"user_id": 10, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": null, "age": null, "sex": null, "bool_col": null, "int_col": null, "bigint_col": null, "largeint_col": null, "float_col": null, "double_col": null, "char_col": null, "decimal_col": null}
|
||||
1 doris_1 {"user_id": 1, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 1, "sex": 1, "bool_col": 1, "int_col": 1, "bigint_col": 1, "largeint_col": "1", "float_col": 1.1, "double_col": 1.1, "char_col": "char1_1234", "decimal_col": 1}
|
||||
2 doris_2 {"user_id": 2, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 2, "sex": 2, "bool_col": 1, "int_col": 2, "bigint_col": 2, "largeint_col": "2", "float_col": 2.2, "double_col": 2.2, "char_col": "char2_1234", "decimal_col": 2}
|
||||
3 doris_3 {"user_id": 3, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 3, "sex": 3, "bool_col": 1, "int_col": 3, "bigint_col": 3, "largeint_col": "3", "float_col": 3.3, "double_col": 3.3, "char_col": "char3_1234", "decimal_col": 3}
|
||||
4 doris_4 {"user_id": 4, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 4, "sex": 4, "bool_col": 1, "int_col": 4, "bigint_col": 4, "largeint_col": "4", "float_col": 4.4, "double_col": 4.4, "char_col": "char4_1234", "decimal_col": 4}
|
||||
5 doris_5 {"user_id": 5, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 5, "sex": 5, "bool_col": 1, "int_col": 5, "bigint_col": 5, "largeint_col": "5", "float_col": 5.5, "double_col": 5.5, "char_col": "char5_1234", "decimal_col": 5}
|
||||
6 doris_6 {"user_id": 6, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 6, "sex": 6, "bool_col": 1, "int_col": 6, "bigint_col": 6, "largeint_col": "6", "float_col": 6.6, "double_col": 6.6, "char_col": "char6_1234", "decimal_col": 6}
|
||||
7 doris_7 {"user_id": 7, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 7, "sex": 7, "bool_col": 1, "int_col": 7, "bigint_col": 7, "largeint_col": "7", "float_col": 7.7, "double_col": 7.7, "char_col": "char7_1234", "decimal_col": 7}
|
||||
8 doris_8 {"user_id": 8, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 8, "sex": 8, "bool_col": 1, "int_col": 8, "bigint_col": 8, "largeint_col": "8", "float_col": 8.8, "double_col": 8.8, "char_col": "char8_1234", "decimal_col": 8}
|
||||
9 doris_9 {"user_id": 9, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 9, "sex": 9, "bool_col": 1, "int_col": 9, "bigint_col": 9, "largeint_col": "9", "float_col": 9.9, "double_col": 9.9, "char_col": "char9_1234", "decimal_col": 9}
|
||||
10 doris_10 {"user_id": 10, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": null, "age": null, "sex": null, "bool_col": null, "int_col": null, "bigint_col": null, "largeint_col": null, "float_col": null, "double_col": null, "char_col": null, "decimal_col": null}
|
||||
|
||||
|
||||
@ -208,16 +208,16 @@
|
||||
10 doris10 {"2003-04-29 01:02:03":"a", "2006-02-22 02:01:04":"max_largeint", "2020-03-21 19:21:23":"b"}
|
||||
|
||||
-- !select_load10 --
|
||||
1 doris1 {"2023-04-20 01:02:03":"null", "2018-04-20 10:40:35":"b"}
|
||||
2 doris2 {"2000-04-20 00:00:00":"a", "1967-12-31 12:24:56":"b"}
|
||||
3 doris3 {"2023-01-01 00:00:00":"b", "2023-02-27 00:01:02":"d"}
|
||||
1 doris1 {"2023-04-20 01:02:03.000000":"null", "2018-04-20 10:40:35.000000":"b"}
|
||||
2 doris2 {"2000-04-20 00:00:00.000000":"a", "1967-12-31 12:24:56.000000":"b"}
|
||||
3 doris3 {"2023-01-01 00:00:00.000000":"b", "2023-02-27 00:01:02.000000":"d"}
|
||||
4 doris4 {}
|
||||
5 doris5 {}
|
||||
6 \N \N
|
||||
7 doris7 \N
|
||||
8 doris8 {"2025-12-31 12:01:41":"min_largeint", "2006-02-19 09:01:02":"max_largeint"}
|
||||
9 doris9 {"0209-04-20 00:00:00":"min_largeint", "0102-03-21 00:00:00":"b"}
|
||||
10 doris10 {"2003-04-29 01:02:03":"a", "2006-02-22 02:01:04":"max_largeint", "2020-03-21 19:21:23":"b"}
|
||||
8 doris8 {"2025-12-31 12:01:41.000000":"min_largeint", "2006-02-19 09:01:02.000000":"max_largeint"}
|
||||
9 doris9 {"0209-04-20 00:00:00.000000":"min_largeint", "0102-03-21 00:00:00.000000":"b"}
|
||||
10 doris10 {"2003-04-29 01:02:03.000000":"a", "2006-02-22 02:01:04.000000":"max_largeint", "2020-03-21 19:21:23.000000":"b"}
|
||||
|
||||
-- !select_base11 --
|
||||
1 doris1 {"2023-04-20 01:02:03":null, "2018-04-20 10:40:35":123}
|
||||
@ -230,14 +230,14 @@
|
||||
8 doris8 {"2025-12-31 12:01:41":524524, "2006-02-19 09:01:02":2534}
|
||||
|
||||
-- !select_load11 --
|
||||
1 doris1 {"2023-04-20 01:02:03":null, "2018-04-20 10:40:35":123}
|
||||
2 doris2 {"2000-04-20 00:00:00":-2147483648, "1967-12-31 12:24:56":2147483647}
|
||||
3 doris3 {"2023-01-01 00:00:00":1246, "2023-02-27 00:01:02":5646}
|
||||
1 doris1 {"2023-04-20 01:02:03.000000":null, "2018-04-20 10:40:35.000000":123}
|
||||
2 doris2 {"2000-04-20 00:00:00.000000":-2147483648, "1967-12-31 12:24:56.000000":2147483647}
|
||||
3 doris3 {"2023-01-01 00:00:00.000000":1246, "2023-02-27 00:01:02.000000":5646}
|
||||
4 doris4 {}
|
||||
5 doris5 {}
|
||||
6 \N \N
|
||||
7 doris7 \N
|
||||
8 doris8 {"2025-12-31 12:01:41":524524, "2006-02-19 09:01:02":2534}
|
||||
8 doris8 {"2025-12-31 12:01:41.000000":524524, "2006-02-19 09:01:02.000000":2534}
|
||||
|
||||
-- !select_base12 --
|
||||
1 doris1 {"2023-04-20":null, "2018-04-20":123}
|
||||
@ -290,14 +290,14 @@
|
||||
8 doris8 {"2025-12-31 11:22:33":"min_largeint", "2006-02-19 00:44:55":"max_largeint"}
|
||||
|
||||
-- !select_load14 --
|
||||
1 doris1 {"2023-04-20 12:20:03":"null", "2018-04-20 12:59:59":null}
|
||||
2 doris2 {"2000-04-20 23:59:59":"-2147483648", "1967-12-31 00:00:00":"2147483647"}
|
||||
3 doris3 {"2023-01-01 07:24:54":"1246", "2023-02-27 15:12:13":"5646"}
|
||||
1 doris1 {"2023-04-20 12:20:03.000000":"null", "2018-04-20 12:59:59.000000":null}
|
||||
2 doris2 {"2000-04-20 23:59:59.000000":"-2147483648", "1967-12-31 00:00:00.000000":"2147483647"}
|
||||
3 doris3 {"2023-01-01 07:24:54.000000":"1246", "2023-02-27 15:12:13.000000":"5646"}
|
||||
4 doris4 {}
|
||||
5 doris5 {}
|
||||
6 \N \N
|
||||
7 doris7 \N
|
||||
8 doris8 {"2025-12-31 11:22:33":"min_largeint", "2006-02-19 00:44:55":"max_largeint"}
|
||||
8 doris8 {"2025-12-31 11:22:33.000000":"min_largeint", "2006-02-19 00:44:55.000000":"max_largeint"}
|
||||
|
||||
-- !select_base15 --
|
||||
1 doris1 {100:"null", 111:"b"}
|
||||
|
||||
@ -6,10 +6,10 @@
|
||||
4 0000-01-01 0000-01-01 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 Beijing Haidian 4 4 true 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
|
||||
-- !select_load1 --
|
||||
1 2023-04-20 2023-04-20 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 Beijing Haidian 1 1 true 1 1 1 1.1 1.1 char1 1 1 1 0.1 1.00000000 1.0000000000 1 1.0000000000000000000000000000000000000 0.10000000000000000000000000000000000000
|
||||
2 9999-12-31 9999-12-31 9999-12-31T23:59:59 9999-12-31T23:59:59 2023-04-20T00:00:00.120 2023-04-20T00:00:00.334400 Haidian -32768 -128 true -2147483648 -9223372036854775808 -170141183460469231731687303715884105728 1.4E-45 4.9E-324 char2 100000000 100000000 4 0.1 0.99999999 9999999999.9999999999 99999999999999999999999999999999999999 9.9999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
3 2023-04-21 2023-04-21 2023-04-20T12:34:56 2023-04-20T00:00 2023-04-20T00:00:00.123 2023-04-20T00:00:00.123456 Beijing 32767 127 true 2147483647 9223372036854775807 170141183460469231731687303715884105727 3.4028235e+38 1.7976931348623157E308 char3 999999999 999999999 9 0.9 9.99999999 1234567890.0123456789 12345678901234567890123456789012345678 1.2345678901234567890123456789012345678 0.12345678901234567890123456789012345678
|
||||
4 0000-01-01 0000-01-01 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 Beijing Haidian 4 4 true 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
1 2023-04-20 2023-04-20 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 Beijing Haidian 1 1 1 1 1 1 1.1 1.1 char1 1 1 1 0.1 1.00000000 1.0000000000 1 1.0000000000000000000000000000000000000 0.10000000000000000000000000000000000000
|
||||
2 9999-12-31 9999-12-31 9999-12-31 23:59:59 9999-12-31 23:59:59 2023-04-20 00:00:00.120000 2023-04-20 00:00:00.334400 Haidian -32768 -128 1 -2147483648 -9223372036854775808 -170141183460469231731687303715884105728 1.4013e-45 5e-324 char2 100000000 100000000 4 0.1 0.99999999 9999999999.9999999999 99999999999999999999999999999999999999 9.9999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
3 2023-04-21 2023-04-21 2023-04-20 12:34:56 2023-04-20 00:00:00 2023-04-20 00:00:00.123000 2023-04-20 00:00:00.123456 Beijing 32767 127 1 2147483647 9223372036854775807 170141183460469231731687303715884105727 3.4028235e+38 1.7976931348623157e+308 char3 999999999 999999999 9 0.9 9.99999999 1234567890.0123456789 12345678901234567890123456789012345678 1.2345678901234567890123456789012345678 0.12345678901234567890123456789012345678
|
||||
4 0000-01-01 0000-01-01 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 Beijing Haidian 4 4 1 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
|
||||
-- !select_load2 --
|
||||
1 2023-04-20 2023-04-20 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 Beijing Haidian 1 1 true 1 1 1 1.1 1.1 char1 1 1 1 0.1 1.00000000 1.0000000000 1 1.0000000000000000000000000000000000000 0.10000000000000000000000000000000000000
|
||||
@ -24,14 +24,14 @@
|
||||
4 0000-01-01 0000-01-01 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 Beijing Haidian 4 4 true 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
|
||||
-- !select_load4 --
|
||||
1 2023-04-20 2023-04-20 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 Beijing Haidian 1 1 true 1 1 1 1.1 1.1 char1 1 1 1 0.1 1.00000000 1.0000000000 1 1.0000000000000000000000000000000000000 0.10000000000000000000000000000000000000
|
||||
2 9999-12-31 9999-12-31 9999-12-31T23:59:59 9999-12-31T23:59:59 2023-04-20T00:00:00.120 2023-04-20T00:00:00.334400 Haidian -32768 -128 true -2147483648 -9223372036854775808 -170141183460469231731687303715884105728 1.4E-45 4.9E-324 char2 100000000 100000000 4 0.1 0.99999999 9999999999.9999999999 99999999999999999999999999999999999999 9.9999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
3 2023-04-21 2023-04-21 2023-04-20T12:34:56 2023-04-20T00:00 2023-04-20T00:00:00.123 2023-04-20T00:00:00.123456 Beijing 32767 127 true 2147483647 9223372036854775807 170141183460469231731687303715884105727 3.4028235e+38 1.7976931348623157E308 char3 999999999 999999999 9 0.9 9.99999999 1234567890.0123456789 12345678901234567890123456789012345678 1.2345678901234567890123456789012345678 0.12345678901234567890123456789012345678
|
||||
4 0000-01-01 0000-01-01 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 Beijing Haidian 4 4 true 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
1 2023-04-20 2023-04-20 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 Beijing Haidian 1 1 1 1 1 1 1.1 1.1 char1 1 1 1 0.1 1.00000000 1.0000000000 1 1.0000000000000000000000000000000000000 0.10000000000000000000000000000000000000
|
||||
2 9999-12-31 9999-12-31 9999-12-31 23:59:59 9999-12-31 23:59:59 2023-04-20 00:00:00.120000 2023-04-20 00:00:00.334400 Haidian -32768 -128 1 -2147483648 -9223372036854775808 -170141183460469231731687303715884105728 1.4013e-45 5e-324 char2 100000000 100000000 4 0.1 0.99999999 9999999999.9999999999 99999999999999999999999999999999999999 9.9999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
3 2023-04-21 2023-04-21 2023-04-20 12:34:56 2023-04-20 00:00:00 2023-04-20 00:00:00.123000 2023-04-20 00:00:00.123456 Beijing 32767 127 1 2147483647 9223372036854775807 170141183460469231731687303715884105727 3.4028235e+38 1.7976931348623157e+308 char3 999999999 999999999 9 0.9 9.99999999 1234567890.0123456789 12345678901234567890123456789012345678 1.2345678901234567890123456789012345678 0.12345678901234567890123456789012345678
|
||||
4 0000-01-01 0000-01-01 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 Beijing Haidian 4 4 1 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
|
||||
-- !select_load5 --
|
||||
1 2023-04-20 2023-04-20 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 Beijing Haidian 1 1 true 1 1 1 1.1 1.1 char1 1 1 1 0.1 1.00000000 1.0000000000 1 1.0000000000000000000000000000000000000 0.10000000000000000000000000000000000000
|
||||
2 9999-12-31 9999-12-31 9999-12-31T23:59:59 9999-12-31T23:59:59 2023-04-20T00:00:00.120 2023-04-20T00:00:00.334400 Haidian -32768 -128 true -2147483648 -9223372036854775808 -170141183460469231731687303715884105728 1.4E-45 4.9E-324 char2 100000000 100000000 4 0.1 0.99999999 9999999999.9999999999 99999999999999999999999999999999999999 9.9999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
3 2023-04-21 2023-04-21 2023-04-20T12:34:56 2023-04-20T00:00 2023-04-20T00:00:00.123 2023-04-20T00:00:00.123456 Beijing 32767 127 true 2147483647 9223372036854775807 170141183460469231731687303715884105727 3.4028235e+38 1.7976931348623157E308 char3 999999999 999999999 9 0.9 9.99999999 1234567890.0123456789 12345678901234567890123456789012345678 1.2345678901234567890123456789012345678 0.12345678901234567890123456789012345678
|
||||
4 0000-01-01 0000-01-01 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 Beijing Haidian 4 4 true 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
1 2023-04-20 2023-04-20 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 Beijing Haidian 1 1 1 1 1 1 1.1 1.1 char1 1 1 1 0.1 1.00000000 1.0000000000 1 1.0000000000000000000000000000000000000 0.10000000000000000000000000000000000000
|
||||
2 9999-12-31 9999-12-31 9999-12-31 23:59:59 9999-12-31 23:59:59 2023-04-20 00:00:00.120000 2023-04-20 00:00:00.334400 Haidian -32768 -128 1 -2147483648 -9223372036854775808 -170141183460469231731687303715884105728 1.4013e-45 5e-324 char2 100000000 100000000 4 0.1 0.99999999 9999999999.9999999999 99999999999999999999999999999999999999 9.9999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
3 2023-04-21 2023-04-21 2023-04-20 12:34:56 2023-04-20 00:00:00 2023-04-20 00:00:00.123000 2023-04-20 00:00:00.123456 Beijing 32767 127 1 2147483647 9223372036854775807 170141183460469231731687303715884105727 3.4028235e+38 1.7976931348623157e+308 char3 999999999 999999999 9 0.9 9.99999999 1234567890.0123456789 12345678901234567890123456789012345678 1.2345678901234567890123456789012345678 0.12345678901234567890123456789012345678
|
||||
4 0000-01-01 0000-01-01 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 Beijing Haidian 4 4 1 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
|
||||
|
||||
@ -102,104 +102,104 @@
|
||||
100 2017-10-01 2017-10-01T00:00 \N \N \N \N \N \N \N \N \N \N \N
|
||||
|
||||
-- !select_load1 --
|
||||
1 Beijing 1 1 true 1 1 1.1 1.1 char1 1
|
||||
2 Beijing 2 2 true 2 2 2.2 2.2 char2 2
|
||||
3 Beijing 3 3 true 3 3 3.3 3.3 char3 3
|
||||
4 Beijing 4 4 true 4 4 4.4 4.4 char4 4
|
||||
5 Beijing 5 5 true 5 5 5.5 5.5 char5 5
|
||||
6 Beijing 6 6 true 6 6 6.6 6.6 char6 6
|
||||
7 Beijing 7 7 true 7 7 7.7 7.7 char7 7
|
||||
8 Beijing 8 8 true 8 8 8.8 8.8 char8 8
|
||||
9 Beijing 9 9 true 9 9 9.9 9.9 char9 9
|
||||
10 Beijing 10 10 true 10 10 10.1 10.1 char10 10
|
||||
11 Beijing 11 11 true 11 11 11.11 11.11 char11 11
|
||||
12 Beijing 12 12 true 12 12 12.12 12.12 char12 12
|
||||
13 Beijing 13 13 true 13 13 13.13 13.13 char13 13
|
||||
14 Beijing 14 14 true 14 14 14.14 14.14 char14 14
|
||||
15 Beijing 15 15 true 15 15 15.15 15.15 char15 15
|
||||
16 Beijing 16 16 true 16 16 16.16 16.16 char16 16
|
||||
17 Beijing 17 17 true 17 17 17.17 17.17 char17 17
|
||||
18 Beijing 18 18 true 18 18 18.18 18.18 char18 18
|
||||
19 Beijing 19 19 true 19 19 19.19 19.19 char19 19
|
||||
20 Beijing 20 20 true 20 20 20.2 20.2 char20 20
|
||||
21 Beijing 21 21 true 21 21 21.21 21.21 char21 21
|
||||
22 Beijing 22 22 true 22 22 22.22 22.22 char22 22
|
||||
23 Beijing 23 23 true 23 23 23.23 23.23 char23 23
|
||||
24 Beijing 24 24 true 24 24 24.24 24.24 char24 24
|
||||
25 Beijing 25 25 true 25 25 25.25 25.25 char25 25
|
||||
26 Beijing 26 26 true 26 26 26.26 26.26 char26 26
|
||||
27 Beijing 27 27 true 27 27 27.27 27.27 char27 27
|
||||
28 Beijing 28 28 true 28 28 28.28 28.28 char28 28
|
||||
29 Beijing 29 29 true 29 29 29.29 29.29 char29 29
|
||||
30 Beijing 30 30 true 30 30 30.3 30.3 char30 30
|
||||
31 Beijing 31 31 true 31 31 31.31 31.31 char31 31
|
||||
32 Beijing 32 32 true 32 32 32.32 32.32 char32 32
|
||||
33 Beijing 33 33 true 33 33 33.33 33.33 char33 33
|
||||
34 Beijing 34 34 true 34 34 34.34 34.34 char34 34
|
||||
35 Beijing 35 35 true 35 35 35.35 35.35 char35 35
|
||||
36 Beijing 36 36 true 36 36 36.36 36.36 char36 36
|
||||
37 Beijing 37 37 true 37 37 37.37 37.37 char37 37
|
||||
38 Beijing 38 38 true 38 38 38.38 38.38 char38 38
|
||||
39 Beijing 39 39 true 39 39 39.39 39.39 char39 39
|
||||
40 Beijing 40 40 true 40 40 40.4 40.4 char40 40
|
||||
41 Beijing 41 41 true 41 41 41.41 41.41 char41 41
|
||||
42 Beijing 42 42 true 42 42 42.42 42.42 char42 42
|
||||
43 Beijing 43 43 true 43 43 43.43 43.43 char43 43
|
||||
44 Beijing 44 44 true 44 44 44.44 44.44 char44 44
|
||||
45 Beijing 45 45 true 45 45 45.45 45.45 char45 45
|
||||
46 Beijing 46 46 true 46 46 46.46 46.46 char46 46
|
||||
47 Beijing 47 47 true 47 47 47.47 47.47 char47 47
|
||||
48 Beijing 48 48 true 48 48 48.48 48.48 char48 48
|
||||
49 Beijing 49 49 true 49 49 49.49 49.49 char49 49
|
||||
50 Beijing 50 50 true 50 50 50.5 50.5 char50 50
|
||||
51 Beijing 51 51 true 51 51 51.51 51.51 char51 51
|
||||
52 Beijing 52 52 true 52 52 52.52 52.52 char52 52
|
||||
53 Beijing 53 53 true 53 53 53.53 53.53 char53 53
|
||||
54 Beijing 54 54 true 54 54 54.54 54.54 char54 54
|
||||
55 Beijing 55 55 true 55 55 55.55 55.55 char55 55
|
||||
56 Beijing 56 56 true 56 56 56.56 56.56 char56 56
|
||||
57 Beijing 57 57 true 57 57 57.57 57.57 char57 57
|
||||
58 Beijing 58 58 true 58 58 58.58 58.58 char58 58
|
||||
59 Beijing 59 59 true 59 59 59.59 59.59 char59 59
|
||||
60 Beijing 60 60 true 60 60 60.6 60.6 char60 60
|
||||
61 Beijing 61 61 true 61 61 61.61 61.61 char61 61
|
||||
62 Beijing 62 62 true 62 62 62.62 62.62 char62 62
|
||||
63 Beijing 63 63 true 63 63 63.63 63.63 char63 63
|
||||
64 Beijing 64 64 true 64 64 64.64 64.64 char64 64
|
||||
65 Beijing 65 65 true 65 65 65.65 65.65 char65 65
|
||||
66 Beijing 66 66 true 66 66 66.66 66.66 char66 66
|
||||
67 Beijing 67 67 true 67 67 67.67 67.67 char67 67
|
||||
68 Beijing 68 68 true 68 68 68.68 68.68 char68 68
|
||||
69 Beijing 69 69 true 69 69 69.69 69.69 char69 69
|
||||
70 Beijing 70 70 true 70 70 70.7 70.7 char70 70
|
||||
71 Beijing 71 71 true 71 71 71.71 71.71 char71 71
|
||||
72 Beijing 72 72 true 72 72 72.72 72.72 char72 72
|
||||
73 Beijing 73 73 true 73 73 73.73 73.73 char73 73
|
||||
74 Beijing 74 74 true 74 74 74.74 74.74 char74 74
|
||||
75 Beijing 75 75 true 75 75 75.75 75.75 char75 75
|
||||
76 Beijing 76 76 true 76 76 76.76 76.76 char76 76
|
||||
77 Beijing 77 77 true 77 77 77.77 77.77 char77 77
|
||||
78 Beijing 78 78 true 78 78 78.78 78.78 char78 78
|
||||
79 Beijing 79 79 true 79 79 79.79 79.79 char79 79
|
||||
80 Beijing 80 80 true 80 80 80.8 80.8 char80 80
|
||||
81 Beijing 81 81 true 81 81 81.81 81.81 char81 81
|
||||
82 Beijing 82 82 true 82 82 82.82 82.82 char82 82
|
||||
83 Beijing 83 83 true 83 83 83.83 83.83 char83 83
|
||||
84 Beijing 84 84 true 84 84 84.84 84.84 char84 84
|
||||
85 Beijing 85 85 true 85 85 85.85 85.85 char85 85
|
||||
86 Beijing 86 86 true 86 86 86.86 86.86 char86 86
|
||||
87 Beijing 87 87 true 87 87 87.87 87.87 char87 87
|
||||
88 Beijing 88 88 true 88 88 88.88 88.88 char88 88
|
||||
89 Beijing 89 89 true 89 89 89.89 89.89 char89 89
|
||||
90 Beijing 90 90 true 90 90 90.9 90.9 char90 90
|
||||
91 Beijing 91 91 true 91 91 91.91 91.91 char91 91
|
||||
92 Beijing 92 92 true 92 92 92.92 92.92 char92 92
|
||||
93 Beijing 93 93 true 93 93 93.93 93.93 char93 93
|
||||
94 Beijing 94 94 true 94 94 94.94 94.94 char94 94
|
||||
95 Beijing 95 95 true 95 95 95.95 95.95 char95 95
|
||||
96 Beijing 96 96 true 96 96 96.96 96.96 char96 96
|
||||
97 Beijing 97 97 true 97 97 97.97 97.97 char97 97
|
||||
98 Beijing 98 98 true 98 98 98.98 98.98 char98 98
|
||||
99 Beijing 99 99 true 99 99 99.99 99.99 char99 99
|
||||
100 \N \N \N \N \N \N \N \N \N \N
|
||||
1 2017-10-01 2017-10-01T00:00 Beijing 1 1 true 1 1 1 1.1 1.1 char1 1
|
||||
2 2017-10-01 2017-10-01T00:00 Beijing 2 2 true 2 2 2 2.2 2.2 char2 2
|
||||
3 2017-10-01 2017-10-01T00:00 Beijing 3 3 true 3 3 3 3.3 3.3 char3 3
|
||||
4 2017-10-01 2017-10-01T00:00 Beijing 4 4 true 4 4 4 4.4 4.4 char4 4
|
||||
5 2017-10-01 2017-10-01T00:00 Beijing 5 5 true 5 5 5 5.5 5.5 char5 5
|
||||
6 2017-10-01 2017-10-01T00:00 Beijing 6 6 true 6 6 6 6.6 6.6 char6 6
|
||||
7 2017-10-01 2017-10-01T00:00 Beijing 7 7 true 7 7 7 7.7 7.7 char7 7
|
||||
8 2017-10-01 2017-10-01T00:00 Beijing 8 8 true 8 8 8 8.8 8.8 char8 8
|
||||
9 2017-10-01 2017-10-01T00:00 Beijing 9 9 true 9 9 9 9.9 9.9 char9 9
|
||||
10 2017-10-01 2017-10-01T00:00 Beijing 10 10 true 10 10 10 10.1 10.1 char10 10
|
||||
11 2017-10-01 2017-10-01T00:00 Beijing 11 11 true 11 11 11 11.11 11.11 char11 11
|
||||
12 2017-10-01 2017-10-01T00:00 Beijing 12 12 true 12 12 12 12.12 12.12 char12 12
|
||||
13 2017-10-01 2017-10-01T00:00 Beijing 13 13 true 13 13 13 13.13 13.13 char13 13
|
||||
14 2017-10-01 2017-10-01T00:00 Beijing 14 14 true 14 14 14 14.14 14.14 char14 14
|
||||
15 2017-10-01 2017-10-01T00:00 Beijing 15 15 true 15 15 15 15.15 15.15 char15 15
|
||||
16 2017-10-01 2017-10-01T00:00 Beijing 16 16 true 16 16 16 16.16 16.16 char16 16
|
||||
17 2017-10-01 2017-10-01T00:00 Beijing 17 17 true 17 17 17 17.17 17.17 char17 17
|
||||
18 2017-10-01 2017-10-01T00:00 Beijing 18 18 true 18 18 18 18.18 18.18 char18 18
|
||||
19 2017-10-01 2017-10-01T00:00 Beijing 19 19 true 19 19 19 19.19 19.19 char19 19
|
||||
20 2017-10-01 2017-10-01T00:00 Beijing 20 20 true 20 20 20 20.2 20.2 char20 20
|
||||
21 2017-10-01 2017-10-01T00:00 Beijing 21 21 true 21 21 21 21.21 21.21 char21 21
|
||||
22 2017-10-01 2017-10-01T00:00 Beijing 22 22 true 22 22 22 22.22 22.22 char22 22
|
||||
23 2017-10-01 2017-10-01T00:00 Beijing 23 23 true 23 23 23 23.23 23.23 char23 23
|
||||
24 2017-10-01 2017-10-01T00:00 Beijing 24 24 true 24 24 24 24.24 24.24 char24 24
|
||||
25 2017-10-01 2017-10-01T00:00 Beijing 25 25 true 25 25 25 25.25 25.25 char25 25
|
||||
26 2017-10-01 2017-10-01T00:00 Beijing 26 26 true 26 26 26 26.26 26.26 char26 26
|
||||
27 2017-10-01 2017-10-01T00:00 Beijing 27 27 true 27 27 27 27.27 27.27 char27 27
|
||||
28 2017-10-01 2017-10-01T00:00 Beijing 28 28 true 28 28 28 28.28 28.28 char28 28
|
||||
29 2017-10-01 2017-10-01T00:00 Beijing 29 29 true 29 29 29 29.29 29.29 char29 29
|
||||
30 2017-10-01 2017-10-01T00:00 Beijing 30 30 true 30 30 30 30.3 30.3 char30 30
|
||||
31 2017-10-01 2017-10-01T00:00 Beijing 31 31 true 31 31 31 31.31 31.31 char31 31
|
||||
32 2017-10-01 2017-10-01T00:00 Beijing 32 32 true 32 32 32 32.32 32.32 char32 32
|
||||
33 2017-10-01 2017-10-01T00:00 Beijing 33 33 true 33 33 33 33.33 33.33 char33 33
|
||||
34 2017-10-01 2017-10-01T00:00 Beijing 34 34 true 34 34 34 34.34 34.34 char34 34
|
||||
35 2017-10-01 2017-10-01T00:00 Beijing 35 35 true 35 35 35 35.35 35.35 char35 35
|
||||
36 2017-10-01 2017-10-01T00:00 Beijing 36 36 true 36 36 36 36.36 36.36 char36 36
|
||||
37 2017-10-01 2017-10-01T00:00 Beijing 37 37 true 37 37 37 37.37 37.37 char37 37
|
||||
38 2017-10-01 2017-10-01T00:00 Beijing 38 38 true 38 38 38 38.38 38.38 char38 38
|
||||
39 2017-10-01 2017-10-01T00:00 Beijing 39 39 true 39 39 39 39.39 39.39 char39 39
|
||||
40 2017-10-01 2017-10-01T00:00 Beijing 40 40 true 40 40 40 40.4 40.4 char40 40
|
||||
41 2017-10-01 2017-10-01T00:00 Beijing 41 41 true 41 41 41 41.41 41.41 char41 41
|
||||
42 2017-10-01 2017-10-01T00:00 Beijing 42 42 true 42 42 42 42.42 42.42 char42 42
|
||||
43 2017-10-01 2017-10-01T00:00 Beijing 43 43 true 43 43 43 43.43 43.43 char43 43
|
||||
44 2017-10-01 2017-10-01T00:00 Beijing 44 44 true 44 44 44 44.44 44.44 char44 44
|
||||
45 2017-10-01 2017-10-01T00:00 Beijing 45 45 true 45 45 45 45.45 45.45 char45 45
|
||||
46 2017-10-01 2017-10-01T00:00 Beijing 46 46 true 46 46 46 46.46 46.46 char46 46
|
||||
47 2017-10-01 2017-10-01T00:00 Beijing 47 47 true 47 47 47 47.47 47.47 char47 47
|
||||
48 2017-10-01 2017-10-01T00:00 Beijing 48 48 true 48 48 48 48.48 48.48 char48 48
|
||||
49 2017-10-01 2017-10-01T00:00 Beijing 49 49 true 49 49 49 49.49 49.49 char49 49
|
||||
50 2017-10-01 2017-10-01T00:00 Beijing 50 50 true 50 50 50 50.5 50.5 char50 50
|
||||
51 2017-10-01 2017-10-01T00:00 Beijing 51 51 true 51 51 51 51.51 51.51 char51 51
|
||||
52 2017-10-01 2017-10-01T00:00 Beijing 52 52 true 52 52 52 52.52 52.52 char52 52
|
||||
53 2017-10-01 2017-10-01T00:00 Beijing 53 53 true 53 53 53 53.53 53.53 char53 53
|
||||
54 2017-10-01 2017-10-01T00:00 Beijing 54 54 true 54 54 54 54.54 54.54 char54 54
|
||||
55 2017-10-01 2017-10-01T00:00 Beijing 55 55 true 55 55 55 55.55 55.55 char55 55
|
||||
56 2017-10-01 2017-10-01T00:00 Beijing 56 56 true 56 56 56 56.56 56.56 char56 56
|
||||
57 2017-10-01 2017-10-01T00:00 Beijing 57 57 true 57 57 57 57.57 57.57 char57 57
|
||||
58 2017-10-01 2017-10-01T00:00 Beijing 58 58 true 58 58 58 58.58 58.58 char58 58
|
||||
59 2017-10-01 2017-10-01T00:00 Beijing 59 59 true 59 59 59 59.59 59.59 char59 59
|
||||
60 2017-10-01 2017-10-01T00:00 Beijing 60 60 true 60 60 60 60.6 60.6 char60 60
|
||||
61 2017-10-01 2017-10-01T00:00 Beijing 61 61 true 61 61 61 61.61 61.61 char61 61
|
||||
62 2017-10-01 2017-10-01T00:00 Beijing 62 62 true 62 62 62 62.62 62.62 char62 62
|
||||
63 2017-10-01 2017-10-01T00:00 Beijing 63 63 true 63 63 63 63.63 63.63 char63 63
|
||||
64 2017-10-01 2017-10-01T00:00 Beijing 64 64 true 64 64 64 64.64 64.64 char64 64
|
||||
65 2017-10-01 2017-10-01T00:00 Beijing 65 65 true 65 65 65 65.65 65.65 char65 65
|
||||
66 2017-10-01 2017-10-01T00:00 Beijing 66 66 true 66 66 66 66.66 66.66 char66 66
|
||||
67 2017-10-01 2017-10-01T00:00 Beijing 67 67 true 67 67 67 67.67 67.67 char67 67
|
||||
68 2017-10-01 2017-10-01T00:00 Beijing 68 68 true 68 68 68 68.68 68.68 char68 68
|
||||
69 2017-10-01 2017-10-01T00:00 Beijing 69 69 true 69 69 69 69.69 69.69 char69 69
|
||||
70 2017-10-01 2017-10-01T00:00 Beijing 70 70 true 70 70 70 70.7 70.7 char70 70
|
||||
71 2017-10-01 2017-10-01T00:00 Beijing 71 71 true 71 71 71 71.71 71.71 char71 71
|
||||
72 2017-10-01 2017-10-01T00:00 Beijing 72 72 true 72 72 72 72.72 72.72 char72 72
|
||||
73 2017-10-01 2017-10-01T00:00 Beijing 73 73 true 73 73 73 73.73 73.73 char73 73
|
||||
74 2017-10-01 2017-10-01T00:00 Beijing 74 74 true 74 74 74 74.74 74.74 char74 74
|
||||
75 2017-10-01 2017-10-01T00:00 Beijing 75 75 true 75 75 75 75.75 75.75 char75 75
|
||||
76 2017-10-01 2017-10-01T00:00 Beijing 76 76 true 76 76 76 76.76 76.76 char76 76
|
||||
77 2017-10-01 2017-10-01T00:00 Beijing 77 77 true 77 77 77 77.77 77.77 char77 77
|
||||
78 2017-10-01 2017-10-01T00:00 Beijing 78 78 true 78 78 78 78.78 78.78 char78 78
|
||||
79 2017-10-01 2017-10-01T00:00 Beijing 79 79 true 79 79 79 79.79 79.79 char79 79
|
||||
80 2017-10-01 2017-10-01T00:00 Beijing 80 80 true 80 80 80 80.8 80.8 char80 80
|
||||
81 2017-10-01 2017-10-01T00:00 Beijing 81 81 true 81 81 81 81.81 81.81 char81 81
|
||||
82 2017-10-01 2017-10-01T00:00 Beijing 82 82 true 82 82 82 82.82 82.82 char82 82
|
||||
83 2017-10-01 2017-10-01T00:00 Beijing 83 83 true 83 83 83 83.83 83.83 char83 83
|
||||
84 2017-10-01 2017-10-01T00:00 Beijing 84 84 true 84 84 84 84.84 84.84 char84 84
|
||||
85 2017-10-01 2017-10-01T00:00 Beijing 85 85 true 85 85 85 85.85 85.85 char85 85
|
||||
86 2017-10-01 2017-10-01T00:00 Beijing 86 86 true 86 86 86 86.86 86.86 char86 86
|
||||
87 2017-10-01 2017-10-01T00:00 Beijing 87 87 true 87 87 87 87.87 87.87 char87 87
|
||||
88 2017-10-01 2017-10-01T00:00 Beijing 88 88 true 88 88 88 88.88 88.88 char88 88
|
||||
89 2017-10-01 2017-10-01T00:00 Beijing 89 89 true 89 89 89 89.89 89.89 char89 89
|
||||
90 2017-10-01 2017-10-01T00:00 Beijing 90 90 true 90 90 90 90.9 90.9 char90 90
|
||||
91 2017-10-01 2017-10-01T00:00 Beijing 91 91 true 91 91 91 91.91 91.91 char91 91
|
||||
92 2017-10-01 2017-10-01T00:00 Beijing 92 92 true 92 92 92 92.92 92.92 char92 92
|
||||
93 2017-10-01 2017-10-01T00:00 Beijing 93 93 true 93 93 93 93.93 93.93 char93 93
|
||||
94 2017-10-01 2017-10-01T00:00 Beijing 94 94 true 94 94 94 94.94 94.94 char94 94
|
||||
95 2017-10-01 2017-10-01T00:00 Beijing 95 95 true 95 95 95 95.95 95.95 char95 95
|
||||
96 2017-10-01 2017-10-01T00:00 Beijing 96 96 true 96 96 96 96.96 96.96 char96 96
|
||||
97 2017-10-01 2017-10-01T00:00 Beijing 97 97 true 97 97 97 97.97 97.97 char97 97
|
||||
98 2017-10-01 2017-10-01T00:00 Beijing 98 98 true 98 98 98 98.98 98.98 char98 98
|
||||
99 2017-10-01 2017-10-01T00:00 Beijing 99 99 true 99 99 99 99.99 99.99 char99 99
|
||||
100 2017-10-01 2017-10-01T00:00 \N \N \N \N \N \N \N \N \N \N \N
|
||||
|
||||
|
||||
@ -102,104 +102,104 @@
|
||||
99 2017-10-01 2017-10-01T00:00 Beijing 99 99 true 99 99 99 99.99 99.99 char99 99
|
||||
|
||||
-- !select_load1 --
|
||||
1 2017-10-01 2017-10-01 00:00:00 Beijing 1 1 true 1 1 1.1 1.1 char1 1 1
|
||||
10 2017-10-01 2017-10-01 00:00:00 Beijing 10 10 true 10 10 10.1 10.1 char10 10 10
|
||||
100 2017-10-01 2017-10-01 00:00:00 \N \N \N \N \N \N \N \N \N \N \N
|
||||
11 2017-10-01 2017-10-01 00:00:00 Beijing 11 11 true 11 11 11.11 11.11 char11 11 11
|
||||
12 2017-10-01 2017-10-01 00:00:00 Beijing 12 12 true 12 12 12.12 12.12 char12 12 12
|
||||
13 2017-10-01 2017-10-01 00:00:00 Beijing 13 13 true 13 13 13.13 13.13 char13 13 13
|
||||
14 2017-10-01 2017-10-01 00:00:00 Beijing 14 14 true 14 14 14.14 14.14 char14 14 14
|
||||
15 2017-10-01 2017-10-01 00:00:00 Beijing 15 15 true 15 15 15.15 15.15 char15 15 15
|
||||
16 2017-10-01 2017-10-01 00:00:00 Beijing 16 16 true 16 16 16.16 16.16 char16 16 16
|
||||
17 2017-10-01 2017-10-01 00:00:00 Beijing 17 17 true 17 17 17.17 17.17 char17 17 17
|
||||
18 2017-10-01 2017-10-01 00:00:00 Beijing 18 18 true 18 18 18.18 18.18 char18 18 18
|
||||
19 2017-10-01 2017-10-01 00:00:00 Beijing 19 19 true 19 19 19.19 19.19 char19 19 19
|
||||
2 2017-10-01 2017-10-01 00:00:00 Beijing 2 2 true 2 2 2.2 2.2 char2 2 2
|
||||
20 2017-10-01 2017-10-01 00:00:00 Beijing 20 20 true 20 20 20.2 20.2 char20 20 20
|
||||
21 2017-10-01 2017-10-01 00:00:00 Beijing 21 21 true 21 21 21.21 21.21 char21 21 21
|
||||
22 2017-10-01 2017-10-01 00:00:00 Beijing 22 22 true 22 22 22.22 22.22 char22 22 22
|
||||
23 2017-10-01 2017-10-01 00:00:00 Beijing 23 23 true 23 23 23.23 23.23 char23 23 23
|
||||
24 2017-10-01 2017-10-01 00:00:00 Beijing 24 24 true 24 24 24.24 24.24 char24 24 24
|
||||
25 2017-10-01 2017-10-01 00:00:00 Beijing 25 25 true 25 25 25.25 25.25 char25 25 25
|
||||
26 2017-10-01 2017-10-01 00:00:00 Beijing 26 26 true 26 26 26.26 26.26 char26 26 26
|
||||
27 2017-10-01 2017-10-01 00:00:00 Beijing 27 27 true 27 27 27.27 27.27 char27 27 27
|
||||
28 2017-10-01 2017-10-01 00:00:00 Beijing 28 28 true 28 28 28.28 28.28 char28 28 28
|
||||
29 2017-10-01 2017-10-01 00:00:00 Beijing 29 29 true 29 29 29.29 29.29 char29 29 29
|
||||
3 2017-10-01 2017-10-01 00:00:00 Beijing 3 3 true 3 3 3.3 3.3 char3 3 3
|
||||
30 2017-10-01 2017-10-01 00:00:00 Beijing 30 30 true 30 30 30.3 30.3 char30 30 30
|
||||
31 2017-10-01 2017-10-01 00:00:00 Beijing 31 31 true 31 31 31.31 31.31 char31 31 31
|
||||
32 2017-10-01 2017-10-01 00:00:00 Beijing 32 32 true 32 32 32.32 32.32 char32 32 32
|
||||
33 2017-10-01 2017-10-01 00:00:00 Beijing 33 33 true 33 33 33.33 33.33 char33 33 33
|
||||
34 2017-10-01 2017-10-01 00:00:00 Beijing 34 34 true 34 34 34.34 34.34 char34 34 34
|
||||
35 2017-10-01 2017-10-01 00:00:00 Beijing 35 35 true 35 35 35.35 35.35 char35 35 35
|
||||
36 2017-10-01 2017-10-01 00:00:00 Beijing 36 36 true 36 36 36.36 36.36 char36 36 36
|
||||
37 2017-10-01 2017-10-01 00:00:00 Beijing 37 37 true 37 37 37.37 37.37 char37 37 37
|
||||
38 2017-10-01 2017-10-01 00:00:00 Beijing 38 38 true 38 38 38.38 38.38 char38 38 38
|
||||
39 2017-10-01 2017-10-01 00:00:00 Beijing 39 39 true 39 39 39.39 39.39 char39 39 39
|
||||
4 2017-10-01 2017-10-01 00:00:00 Beijing 4 4 true 4 4 4.4 4.4 char4 4 4
|
||||
40 2017-10-01 2017-10-01 00:00:00 Beijing 40 40 true 40 40 40.4 40.4 char40 40 40
|
||||
41 2017-10-01 2017-10-01 00:00:00 Beijing 41 41 true 41 41 41.41 41.41 char41 41 41
|
||||
42 2017-10-01 2017-10-01 00:00:00 Beijing 42 42 true 42 42 42.42 42.42 char42 42 42
|
||||
43 2017-10-01 2017-10-01 00:00:00 Beijing 43 43 true 43 43 43.43 43.43 char43 43 43
|
||||
44 2017-10-01 2017-10-01 00:00:00 Beijing 44 44 true 44 44 44.44 44.44 char44 44 44
|
||||
45 2017-10-01 2017-10-01 00:00:00 Beijing 45 45 true 45 45 45.45 45.45 char45 45 45
|
||||
46 2017-10-01 2017-10-01 00:00:00 Beijing 46 46 true 46 46 46.46 46.46 char46 46 46
|
||||
47 2017-10-01 2017-10-01 00:00:00 Beijing 47 47 true 47 47 47.47 47.47 char47 47 47
|
||||
48 2017-10-01 2017-10-01 00:00:00 Beijing 48 48 true 48 48 48.48 48.48 char48 48 48
|
||||
49 2017-10-01 2017-10-01 00:00:00 Beijing 49 49 true 49 49 49.49 49.49 char49 49 49
|
||||
5 2017-10-01 2017-10-01 00:00:00 Beijing 5 5 true 5 5 5.5 5.5 char5 5 5
|
||||
50 2017-10-01 2017-10-01 00:00:00 Beijing 50 50 true 50 50 50.5 50.5 char50 50 50
|
||||
51 2017-10-01 2017-10-01 00:00:00 Beijing 51 51 true 51 51 51.51 51.51 char51 51 51
|
||||
52 2017-10-01 2017-10-01 00:00:00 Beijing 52 52 true 52 52 52.52 52.52 char52 52 52
|
||||
53 2017-10-01 2017-10-01 00:00:00 Beijing 53 53 true 53 53 53.53 53.53 char53 53 53
|
||||
54 2017-10-01 2017-10-01 00:00:00 Beijing 54 54 true 54 54 54.54 54.54 char54 54 54
|
||||
55 2017-10-01 2017-10-01 00:00:00 Beijing 55 55 true 55 55 55.55 55.55 char55 55 55
|
||||
56 2017-10-01 2017-10-01 00:00:00 Beijing 56 56 true 56 56 56.56 56.56 char56 56 56
|
||||
57 2017-10-01 2017-10-01 00:00:00 Beijing 57 57 true 57 57 57.57 57.57 char57 57 57
|
||||
58 2017-10-01 2017-10-01 00:00:00 Beijing 58 58 true 58 58 58.58 58.58 char58 58 58
|
||||
59 2017-10-01 2017-10-01 00:00:00 Beijing 59 59 true 59 59 59.59 59.59 char59 59 59
|
||||
6 2017-10-01 2017-10-01 00:00:00 Beijing 6 6 true 6 6 6.6 6.6 char6 6 6
|
||||
60 2017-10-01 2017-10-01 00:00:00 Beijing 60 60 true 60 60 60.6 60.6 char60 60 60
|
||||
61 2017-10-01 2017-10-01 00:00:00 Beijing 61 61 true 61 61 61.61 61.61 char61 61 61
|
||||
62 2017-10-01 2017-10-01 00:00:00 Beijing 62 62 true 62 62 62.62 62.62 char62 62 62
|
||||
63 2017-10-01 2017-10-01 00:00:00 Beijing 63 63 true 63 63 63.63 63.63 char63 63 63
|
||||
64 2017-10-01 2017-10-01 00:00:00 Beijing 64 64 true 64 64 64.64 64.64 char64 64 64
|
||||
65 2017-10-01 2017-10-01 00:00:00 Beijing 65 65 true 65 65 65.65 65.65 char65 65 65
|
||||
66 2017-10-01 2017-10-01 00:00:00 Beijing 66 66 true 66 66 66.66 66.66 char66 66 66
|
||||
67 2017-10-01 2017-10-01 00:00:00 Beijing 67 67 true 67 67 67.67 67.67 char67 67 67
|
||||
68 2017-10-01 2017-10-01 00:00:00 Beijing 68 68 true 68 68 68.68 68.68 char68 68 68
|
||||
69 2017-10-01 2017-10-01 00:00:00 Beijing 69 69 true 69 69 69.69 69.69 char69 69 69
|
||||
7 2017-10-01 2017-10-01 00:00:00 Beijing 7 7 true 7 7 7.7 7.7 char7 7 7
|
||||
70 2017-10-01 2017-10-01 00:00:00 Beijing 70 70 true 70 70 70.7 70.7 char70 70 70
|
||||
71 2017-10-01 2017-10-01 00:00:00 Beijing 71 71 true 71 71 71.71 71.71 char71 71 71
|
||||
72 2017-10-01 2017-10-01 00:00:00 Beijing 72 72 true 72 72 72.72 72.72 char72 72 72
|
||||
73 2017-10-01 2017-10-01 00:00:00 Beijing 73 73 true 73 73 73.73 73.73 char73 73 73
|
||||
74 2017-10-01 2017-10-01 00:00:00 Beijing 74 74 true 74 74 74.74 74.74 char74 74 74
|
||||
75 2017-10-01 2017-10-01 00:00:00 Beijing 75 75 true 75 75 75.75 75.75 char75 75 75
|
||||
76 2017-10-01 2017-10-01 00:00:00 Beijing 76 76 true 76 76 76.76 76.76 char76 76 76
|
||||
77 2017-10-01 2017-10-01 00:00:00 Beijing 77 77 true 77 77 77.77 77.77 char77 77 77
|
||||
78 2017-10-01 2017-10-01 00:00:00 Beijing 78 78 true 78 78 78.78 78.78 char78 78 78
|
||||
79 2017-10-01 2017-10-01 00:00:00 Beijing 79 79 true 79 79 79.79 79.79 char79 79 79
|
||||
8 2017-10-01 2017-10-01 00:00:00 Beijing 8 8 true 8 8 8.8 8.8 char8 8 8
|
||||
80 2017-10-01 2017-10-01 00:00:00 Beijing 80 80 true 80 80 80.8 80.8 char80 80 80
|
||||
81 2017-10-01 2017-10-01 00:00:00 Beijing 81 81 true 81 81 81.81 81.81 char81 81 81
|
||||
82 2017-10-01 2017-10-01 00:00:00 Beijing 82 82 true 82 82 82.82 82.82 char82 82 82
|
||||
83 2017-10-01 2017-10-01 00:00:00 Beijing 83 83 true 83 83 83.83 83.83 char83 83 83
|
||||
84 2017-10-01 2017-10-01 00:00:00 Beijing 84 84 true 84 84 84.84 84.84 char84 84 84
|
||||
85 2017-10-01 2017-10-01 00:00:00 Beijing 85 85 true 85 85 85.85 85.85 char85 85 85
|
||||
86 2017-10-01 2017-10-01 00:00:00 Beijing 86 86 true 86 86 86.86 86.86 char86 86 86
|
||||
87 2017-10-01 2017-10-01 00:00:00 Beijing 87 87 true 87 87 87.87 87.87 char87 87 87
|
||||
88 2017-10-01 2017-10-01 00:00:00 Beijing 88 88 true 88 88 88.88 88.88 char88 88 88
|
||||
89 2017-10-01 2017-10-01 00:00:00 Beijing 89 89 true 89 89 89.89 89.89 char89 89 89
|
||||
9 2017-10-01 2017-10-01 00:00:00 Beijing 9 9 true 9 9 9.9 9.9 char9 9 9
|
||||
90 2017-10-01 2017-10-01 00:00:00 Beijing 90 90 true 90 90 90.9 90.9 char90 90 90
|
||||
91 2017-10-01 2017-10-01 00:00:00 Beijing 91 91 true 91 91 91.91 91.91 char91 91 91
|
||||
92 2017-10-01 2017-10-01 00:00:00 Beijing 92 92 true 92 92 92.92 92.92 char92 92 92
|
||||
93 2017-10-01 2017-10-01 00:00:00 Beijing 93 93 true 93 93 93.93 93.93 char93 93 93
|
||||
94 2017-10-01 2017-10-01 00:00:00 Beijing 94 94 true 94 94 94.94 94.94 char94 94 94
|
||||
95 2017-10-01 2017-10-01 00:00:00 Beijing 95 95 true 95 95 95.95 95.95 char95 95 95
|
||||
96 2017-10-01 2017-10-01 00:00:00 Beijing 96 96 true 96 96 96.96 96.96 char96 96 96
|
||||
97 2017-10-01 2017-10-01 00:00:00 Beijing 97 97 true 97 97 97.97 97.97 char97 97 97
|
||||
98 2017-10-01 2017-10-01 00:00:00 Beijing 98 98 true 98 98 98.98 98.98 char98 98 98
|
||||
99 2017-10-01 2017-10-01 00:00:00 Beijing 99 99 true 99 99 99.99 99.99 char99 99 99
|
||||
1 2017-10-01 2017-10-01T00:00 Beijing 1 1 true 1 1 1.1 1.1 char1 1 1
|
||||
10 2017-10-01 2017-10-01T00:00 Beijing 10 10 true 10 10 10.1 10.1 char10 10 10
|
||||
100 2017-10-01 2017-10-01T00:00 \N \N \N \N \N \N \N \N \N \N \N
|
||||
11 2017-10-01 2017-10-01T00:00 Beijing 11 11 true 11 11 11.11 11.11 char11 11 11
|
||||
12 2017-10-01 2017-10-01T00:00 Beijing 12 12 true 12 12 12.12 12.12 char12 12 12
|
||||
13 2017-10-01 2017-10-01T00:00 Beijing 13 13 true 13 13 13.13 13.13 char13 13 13
|
||||
14 2017-10-01 2017-10-01T00:00 Beijing 14 14 true 14 14 14.14 14.14 char14 14 14
|
||||
15 2017-10-01 2017-10-01T00:00 Beijing 15 15 true 15 15 15.15 15.15 char15 15 15
|
||||
16 2017-10-01 2017-10-01T00:00 Beijing 16 16 true 16 16 16.16 16.16 char16 16 16
|
||||
17 2017-10-01 2017-10-01T00:00 Beijing 17 17 true 17 17 17.17 17.17 char17 17 17
|
||||
18 2017-10-01 2017-10-01T00:00 Beijing 18 18 true 18 18 18.18 18.18 char18 18 18
|
||||
19 2017-10-01 2017-10-01T00:00 Beijing 19 19 true 19 19 19.19 19.19 char19 19 19
|
||||
2 2017-10-01 2017-10-01T00:00 Beijing 2 2 true 2 2 2.2 2.2 char2 2 2
|
||||
20 2017-10-01 2017-10-01T00:00 Beijing 20 20 true 20 20 20.2 20.2 char20 20 20
|
||||
21 2017-10-01 2017-10-01T00:00 Beijing 21 21 true 21 21 21.21 21.21 char21 21 21
|
||||
22 2017-10-01 2017-10-01T00:00 Beijing 22 22 true 22 22 22.22 22.22 char22 22 22
|
||||
23 2017-10-01 2017-10-01T00:00 Beijing 23 23 true 23 23 23.23 23.23 char23 23 23
|
||||
24 2017-10-01 2017-10-01T00:00 Beijing 24 24 true 24 24 24.24 24.24 char24 24 24
|
||||
25 2017-10-01 2017-10-01T00:00 Beijing 25 25 true 25 25 25.25 25.25 char25 25 25
|
||||
26 2017-10-01 2017-10-01T00:00 Beijing 26 26 true 26 26 26.26 26.26 char26 26 26
|
||||
27 2017-10-01 2017-10-01T00:00 Beijing 27 27 true 27 27 27.27 27.27 char27 27 27
|
||||
28 2017-10-01 2017-10-01T00:00 Beijing 28 28 true 28 28 28.28 28.28 char28 28 28
|
||||
29 2017-10-01 2017-10-01T00:00 Beijing 29 29 true 29 29 29.29 29.29 char29 29 29
|
||||
3 2017-10-01 2017-10-01T00:00 Beijing 3 3 true 3 3 3.3 3.3 char3 3 3
|
||||
30 2017-10-01 2017-10-01T00:00 Beijing 30 30 true 30 30 30.3 30.3 char30 30 30
|
||||
31 2017-10-01 2017-10-01T00:00 Beijing 31 31 true 31 31 31.31 31.31 char31 31 31
|
||||
32 2017-10-01 2017-10-01T00:00 Beijing 32 32 true 32 32 32.32 32.32 char32 32 32
|
||||
33 2017-10-01 2017-10-01T00:00 Beijing 33 33 true 33 33 33.33 33.33 char33 33 33
|
||||
34 2017-10-01 2017-10-01T00:00 Beijing 34 34 true 34 34 34.34 34.34 char34 34 34
|
||||
35 2017-10-01 2017-10-01T00:00 Beijing 35 35 true 35 35 35.35 35.35 char35 35 35
|
||||
36 2017-10-01 2017-10-01T00:00 Beijing 36 36 true 36 36 36.36 36.36 char36 36 36
|
||||
37 2017-10-01 2017-10-01T00:00 Beijing 37 37 true 37 37 37.37 37.37 char37 37 37
|
||||
38 2017-10-01 2017-10-01T00:00 Beijing 38 38 true 38 38 38.38 38.38 char38 38 38
|
||||
39 2017-10-01 2017-10-01T00:00 Beijing 39 39 true 39 39 39.39 39.39 char39 39 39
|
||||
4 2017-10-01 2017-10-01T00:00 Beijing 4 4 true 4 4 4.4 4.4 char4 4 4
|
||||
40 2017-10-01 2017-10-01T00:00 Beijing 40 40 true 40 40 40.4 40.4 char40 40 40
|
||||
41 2017-10-01 2017-10-01T00:00 Beijing 41 41 true 41 41 41.41 41.41 char41 41 41
|
||||
42 2017-10-01 2017-10-01T00:00 Beijing 42 42 true 42 42 42.42 42.42 char42 42 42
|
||||
43 2017-10-01 2017-10-01T00:00 Beijing 43 43 true 43 43 43.43 43.43 char43 43 43
|
||||
44 2017-10-01 2017-10-01T00:00 Beijing 44 44 true 44 44 44.44 44.44 char44 44 44
|
||||
45 2017-10-01 2017-10-01T00:00 Beijing 45 45 true 45 45 45.45 45.45 char45 45 45
|
||||
46 2017-10-01 2017-10-01T00:00 Beijing 46 46 true 46 46 46.46 46.46 char46 46 46
|
||||
47 2017-10-01 2017-10-01T00:00 Beijing 47 47 true 47 47 47.47 47.47 char47 47 47
|
||||
48 2017-10-01 2017-10-01T00:00 Beijing 48 48 true 48 48 48.48 48.48 char48 48 48
|
||||
49 2017-10-01 2017-10-01T00:00 Beijing 49 49 true 49 49 49.49 49.49 char49 49 49
|
||||
5 2017-10-01 2017-10-01T00:00 Beijing 5 5 true 5 5 5.5 5.5 char5 5 5
|
||||
50 2017-10-01 2017-10-01T00:00 Beijing 50 50 true 50 50 50.5 50.5 char50 50 50
|
||||
51 2017-10-01 2017-10-01T00:00 Beijing 51 51 true 51 51 51.51 51.51 char51 51 51
|
||||
52 2017-10-01 2017-10-01T00:00 Beijing 52 52 true 52 52 52.52 52.52 char52 52 52
|
||||
53 2017-10-01 2017-10-01T00:00 Beijing 53 53 true 53 53 53.53 53.53 char53 53 53
|
||||
54 2017-10-01 2017-10-01T00:00 Beijing 54 54 true 54 54 54.54 54.54 char54 54 54
|
||||
55 2017-10-01 2017-10-01T00:00 Beijing 55 55 true 55 55 55.55 55.55 char55 55 55
|
||||
56 2017-10-01 2017-10-01T00:00 Beijing 56 56 true 56 56 56.56 56.56 char56 56 56
|
||||
57 2017-10-01 2017-10-01T00:00 Beijing 57 57 true 57 57 57.57 57.57 char57 57 57
|
||||
58 2017-10-01 2017-10-01T00:00 Beijing 58 58 true 58 58 58.58 58.58 char58 58 58
|
||||
59 2017-10-01 2017-10-01T00:00 Beijing 59 59 true 59 59 59.59 59.59 char59 59 59
|
||||
6 2017-10-01 2017-10-01T00:00 Beijing 6 6 true 6 6 6.6 6.6 char6 6 6
|
||||
60 2017-10-01 2017-10-01T00:00 Beijing 60 60 true 60 60 60.6 60.6 char60 60 60
|
||||
61 2017-10-01 2017-10-01T00:00 Beijing 61 61 true 61 61 61.61 61.61 char61 61 61
|
||||
62 2017-10-01 2017-10-01T00:00 Beijing 62 62 true 62 62 62.62 62.62 char62 62 62
|
||||
63 2017-10-01 2017-10-01T00:00 Beijing 63 63 true 63 63 63.63 63.63 char63 63 63
|
||||
64 2017-10-01 2017-10-01T00:00 Beijing 64 64 true 64 64 64.64 64.64 char64 64 64
|
||||
65 2017-10-01 2017-10-01T00:00 Beijing 65 65 true 65 65 65.65 65.65 char65 65 65
|
||||
66 2017-10-01 2017-10-01T00:00 Beijing 66 66 true 66 66 66.66 66.66 char66 66 66
|
||||
67 2017-10-01 2017-10-01T00:00 Beijing 67 67 true 67 67 67.67 67.67 char67 67 67
|
||||
68 2017-10-01 2017-10-01T00:00 Beijing 68 68 true 68 68 68.68 68.68 char68 68 68
|
||||
69 2017-10-01 2017-10-01T00:00 Beijing 69 69 true 69 69 69.69 69.69 char69 69 69
|
||||
7 2017-10-01 2017-10-01T00:00 Beijing 7 7 true 7 7 7.7 7.7 char7 7 7
|
||||
70 2017-10-01 2017-10-01T00:00 Beijing 70 70 true 70 70 70.7 70.7 char70 70 70
|
||||
71 2017-10-01 2017-10-01T00:00 Beijing 71 71 true 71 71 71.71 71.71 char71 71 71
|
||||
72 2017-10-01 2017-10-01T00:00 Beijing 72 72 true 72 72 72.72 72.72 char72 72 72
|
||||
73 2017-10-01 2017-10-01T00:00 Beijing 73 73 true 73 73 73.73 73.73 char73 73 73
|
||||
74 2017-10-01 2017-10-01T00:00 Beijing 74 74 true 74 74 74.74 74.74 char74 74 74
|
||||
75 2017-10-01 2017-10-01T00:00 Beijing 75 75 true 75 75 75.75 75.75 char75 75 75
|
||||
76 2017-10-01 2017-10-01T00:00 Beijing 76 76 true 76 76 76.76 76.76 char76 76 76
|
||||
77 2017-10-01 2017-10-01T00:00 Beijing 77 77 true 77 77 77.77 77.77 char77 77 77
|
||||
78 2017-10-01 2017-10-01T00:00 Beijing 78 78 true 78 78 78.78 78.78 char78 78 78
|
||||
79 2017-10-01 2017-10-01T00:00 Beijing 79 79 true 79 79 79.79 79.79 char79 79 79
|
||||
8 2017-10-01 2017-10-01T00:00 Beijing 8 8 true 8 8 8.8 8.8 char8 8 8
|
||||
80 2017-10-01 2017-10-01T00:00 Beijing 80 80 true 80 80 80.8 80.8 char80 80 80
|
||||
81 2017-10-01 2017-10-01T00:00 Beijing 81 81 true 81 81 81.81 81.81 char81 81 81
|
||||
82 2017-10-01 2017-10-01T00:00 Beijing 82 82 true 82 82 82.82 82.82 char82 82 82
|
||||
83 2017-10-01 2017-10-01T00:00 Beijing 83 83 true 83 83 83.83 83.83 char83 83 83
|
||||
84 2017-10-01 2017-10-01T00:00 Beijing 84 84 true 84 84 84.84 84.84 char84 84 84
|
||||
85 2017-10-01 2017-10-01T00:00 Beijing 85 85 true 85 85 85.85 85.85 char85 85 85
|
||||
86 2017-10-01 2017-10-01T00:00 Beijing 86 86 true 86 86 86.86 86.86 char86 86 86
|
||||
87 2017-10-01 2017-10-01T00:00 Beijing 87 87 true 87 87 87.87 87.87 char87 87 87
|
||||
88 2017-10-01 2017-10-01T00:00 Beijing 88 88 true 88 88 88.88 88.88 char88 88 88
|
||||
89 2017-10-01 2017-10-01T00:00 Beijing 89 89 true 89 89 89.89 89.89 char89 89 89
|
||||
9 2017-10-01 2017-10-01T00:00 Beijing 9 9 true 9 9 9.9 9.9 char9 9 9
|
||||
90 2017-10-01 2017-10-01T00:00 Beijing 90 90 true 90 90 90.9 90.9 char90 90 90
|
||||
91 2017-10-01 2017-10-01T00:00 Beijing 91 91 true 91 91 91.91 91.91 char91 91 91
|
||||
92 2017-10-01 2017-10-01T00:00 Beijing 92 92 true 92 92 92.92 92.92 char92 92 92
|
||||
93 2017-10-01 2017-10-01T00:00 Beijing 93 93 true 93 93 93.93 93.93 char93 93 93
|
||||
94 2017-10-01 2017-10-01T00:00 Beijing 94 94 true 94 94 94.94 94.94 char94 94 94
|
||||
95 2017-10-01 2017-10-01T00:00 Beijing 95 95 true 95 95 95.95 95.95 char95 95 95
|
||||
96 2017-10-01 2017-10-01T00:00 Beijing 96 96 true 96 96 96.96 96.96 char96 96 96
|
||||
97 2017-10-01 2017-10-01T00:00 Beijing 97 97 true 97 97 97.97 97.97 char97 97 97
|
||||
98 2017-10-01 2017-10-01T00:00 Beijing 98 98 true 98 98 98.98 98.98 char98 98 98
|
||||
99 2017-10-01 2017-10-01T00:00 Beijing 99 99 true 99 99 99.99 99.99 char99 99 99
|
||||
|
||||
|
||||
@ -45,5 +45,5 @@
|
||||
1 2023-04-20 2023-04-20 2023-04-20 00:00:00.0 2023-04-20 00:00:00.0 2023-04-20 00:00:00.0 2023-04-20 00:00:00.0 Beijing Haidian 1 1 true 1 1 1 1.1 1.1 char1 1 1 1 0.1 1.00000000 1.0000000000 1 1.0000000000000000000000000000000000000 0.10000000000000000000000000000000000000
|
||||
2 9999-12-31 9999-12-31 9999-12-31 23:59:59.0 9999-12-31 23:59:59.0 2023-04-20 00:00:00.12 2023-04-20 00:00:00.3344 Haidian -32768 -128 true -2147483648 -9223372036854775808 -170141183460469231731687303715884105728 1.4E-45 4.9E-324 char2 100000000 100000000 4 0.1 0.99999999 9999999999.9999999999 99999999999999999999999999999999999999 9.9999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
3 2023-04-21 2023-04-21 2023-04-20 12:34:56.0 2023-04-20 00:00:00.0 2023-04-20 00:00:00.123 2023-04-20 00:00:00.123456 Beijing 32767 127 true 2147483647 9223372036854775807 170141183460469231731687303715884105727 3.4028235E38 1.7976931348623157E308 char3 999999999 999999999 9 0.9 9.99999999 1234567890.0123456789 12345678901234567890123456789012345678 1.2345678901234567890123456789012345678 0.12345678901234567890123456789012345678
|
||||
4 0000-01-01 0000-01-01 2023-04-20 00:00:00.0 2023-04-20 00:00:00.0 2023-04-20 00:00:00.0 2023-04-20 00:00:00.0 Beijing Haidian 4 4 true 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
4 0001-01-04 0001-01-04 2023-04-20 00:00:00.0 2023-04-20 00:00:00.0 2023-04-20 00:00:00.0 2023-04-20 00:00:00.0 Beijing Haidian 4 4 true 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
|
||||
|
||||
@ -36,14 +36,14 @@
|
||||
4 0000-01-01 0000-01-01 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 Beijing Haidian 4 4 true 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
|
||||
-- !select_tvf2 --
|
||||
1 2023-04-20 2023-04-20 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 Beijing Haidian 1 1 true 1 1 1 1.1 1.1 char1 1 1 1 0.1 1.00000000 1.0000000000 1 1.0000000000000000000000000000000000000 0.10000000000000000000000000000000000000
|
||||
2 9999-12-31 9999-12-31 9999-12-31 23:59:59 9999-12-31 23:59:59 2023-04-20 00:00:00.120000 2023-04-20 00:00:00.334400 Haidian -32768 -128 true -2147483648 -9223372036854775808 -170141183460469231731687303715884105728 1.4E-45 4.9E-324 char2 100000000 100000000 4 0.1 0.99999999 9999999999.9999999999 99999999999999999999999999999999999999 9.9999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
3 2023-04-21 2023-04-21 2023-04-20 12:34:56 2023-04-20 00:00:00 2023-04-20 00:00:00.123000 2023-04-20 00:00:00.123456 Beijing 32767 127 true 2147483647 9223372036854775807 170141183460469231731687303715884105727 3.4028235e+38 1.7976931348623157E308 char3 999999999 999999999 9 0.9 9.99999999 1234567890.0123456789 12345678901234567890123456789012345678 1.2345678901234567890123456789012345678 0.12345678901234567890123456789012345678
|
||||
4 0000-01-01 0000-01-01 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 Beijing Haidian 4 4 true 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
1 2023-04-20 2023-04-20 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 Beijing Haidian 1 1 true 1 1 1 1.1 1.1 char1 1 1 1 0.1 1.00000000 1.0000000000 1 1.0000000000000000000000000000000000000 0.10000000000000000000000000000000000000
|
||||
2 9999-12-31 9999-12-31 9999-12-31T23:59:59 9999-12-31T23:59:59 2023-04-20T00:00:00.120 2023-04-20T00:00:00.334400 Haidian -32768 -128 true -2147483648 -9223372036854775808 -170141183460469231731687303715884105728 1.4E-45 4.9E-324 char2 100000000 100000000 4 0.1 0.99999999 9999999999.9999999999 99999999999999999999999999999999999999 9.9999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
3 2023-04-21 2023-04-21 2023-04-20T12:34:56 2023-04-20T00:00 2023-04-20T00:00:00.123 2023-04-20T00:00:00.123456 Beijing 32767 127 true 2147483647 9223372036854775807 170141183460469231731687303715884105727 3.4028235e+38 1.7976931348623157E308 char3 999999999 999999999 9 0.9 9.99999999 1234567890.0123456789 12345678901234567890123456789012345678 1.2345678901234567890123456789012345678 0.12345678901234567890123456789012345678
|
||||
4 0000-01-01 0000-01-01 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 2023-04-20T00:00 Beijing Haidian 4 4 true 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
|
||||
-- !hive_docker_02 --
|
||||
1 2023-04-20 2023-04-20 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 Beijing Haidian 1 1 true 1 1 1 1.1 1.1 char1 1 1 1 0.1 1.00000000 1.0000000000 1 1.0000000000000000000000000000000000000 0.10000000000000000000000000000000000000
|
||||
2 9999-12-31 9999-12-31 9999-12-31 23:59:59 9999-12-31 23:59:59 2023-04-20 00:00:00.120000 2023-04-20 00:00:00.334400 Haidian -32768 -128 true -2147483648 -9223372036854775808 -170141183460469231731687303715884105728 1.4E-45 4.9E-324 char2 100000000 100000000 4 0.1 0.99999999 9999999999.9999999999 99999999999999999999999999999999999999 9.9999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
3 2023-04-21 2023-04-21 2023-04-20 12:34:56 2023-04-20 00:00:00 2023-04-20 00:00:00.123000 2023-04-20 00:00:00.123456 Beijing 32767 127 true 2147483647 9223372036854775807 170141183460469231731687303715884105727 3.4028235E38 1.7976931348623157E308 char3 999999999 999999999 9 0.9 9.99999999 1234567890.0123456789 12345678901234567890123456789012345678 1.2345678901234567890123456789012345678 0.12345678901234567890123456789012345678
|
||||
4 0000-01-01 0000-01-01 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 2023-04-20 00:00:00 Beijing Haidian 4 4 true 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
1 2023-04-20 2023-04-20 2023-04-19 16:00:00.0 2023-04-19 16:00:00.0 2023-04-19 16:00:00.0 2023-04-19 16:00:00.0 Beijing Haidian 1 1 true 1 1 1 1.1 1.1 char1 1 1 1 0.1 1.00000000 1.0000000000 1 1.0000000000000000000000000000000000000 0.10000000000000000000000000000000000000
|
||||
2 9999-12-31 9999-12-31 9999-12-31 15:59:59.0 9999-12-31 15:59:59.0 2023-04-19 16:00:00.12 2023-04-19 16:00:00.3344 Haidian -32768 -128 true -2147483648 -9223372036854775808 -170141183460469231731687303715884105728 1.4E-45 4.9E-324 char2 100000000 100000000 4 0.1 0.99999999 9999999999.9999999999 99999999999999999999999999999999999999 9.9999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
3 2023-04-21 2023-04-21 2023-04-20 04:34:56.0 2023-04-19 16:00:00.0 2023-04-19 16:00:00.123 2023-04-19 16:00:00.123456 Beijing 32767 127 true 2147483647 9223372036854775807 170141183460469231731687303715884105727 3.4028235E38 1.7976931348623157E308 char3 999999999 999999999 9 0.9 9.99999999 1234567890.0123456789 12345678901234567890123456789012345678 1.2345678901234567890123456789012345678 0.12345678901234567890123456789012345678
|
||||
4 0001-01-04 0001-01-04 2023-04-19 16:00:00.0 2023-04-19 16:00:00.0 2023-04-19 16:00:00.0 2023-04-19 16:00:00.0 Beijing Haidian 4 4 true 4 4 4 4.4 4.4 char4 4 4 4 0.4 4.00000000 4.0000000000 4 4.0000000000000000000000000000000000000 0.40000000000000000000000000000000000000
|
||||
|
||||
|
||||
@ -99,26 +99,26 @@
|
||||
10 doris_10 {"user_id": 10, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": null, "age": null, "sex": null, "bool_col": null, "int_col": null, "bigint_col": null, "largeint_col": null, "float_col": null, "double_col": null, "char_col": null, "decimal_col": null}
|
||||
|
||||
-- !select_tvf4 --
|
||||
1 doris_1 {"user_id": 1, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 1, "sex": 1, "bool_col": 1, "int_col": 1, "bigint_col": 1, "largeint_col": "1", "float_col": 1.1, "double_col": 1.1, "char_col": "char1_1234", "decimal_col": 1}
|
||||
2 doris_2 {"user_id": 2, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 2, "sex": 2, "bool_col": 1, "int_col": 2, "bigint_col": 2, "largeint_col": "2", "float_col": 2.2, "double_col": 2.2, "char_col": "char2_1234", "decimal_col": 2}
|
||||
3 doris_3 {"user_id": 3, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 3, "sex": 3, "bool_col": 1, "int_col": 3, "bigint_col": 3, "largeint_col": "3", "float_col": 3.3, "double_col": 3.3, "char_col": "char3_1234", "decimal_col": 3}
|
||||
4 doris_4 {"user_id": 4, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 4, "sex": 4, "bool_col": 1, "int_col": 4, "bigint_col": 4, "largeint_col": "4", "float_col": 4.4, "double_col": 4.4, "char_col": "char4_1234", "decimal_col": 4}
|
||||
5 doris_5 {"user_id": 5, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 5, "sex": 5, "bool_col": 1, "int_col": 5, "bigint_col": 5, "largeint_col": "5", "float_col": 5.5, "double_col": 5.5, "char_col": "char5_1234", "decimal_col": 5}
|
||||
6 doris_6 {"user_id": 6, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 6, "sex": 6, "bool_col": 1, "int_col": 6, "bigint_col": 6, "largeint_col": "6", "float_col": 6.6, "double_col": 6.6, "char_col": "char6_1234", "decimal_col": 6}
|
||||
7 doris_7 {"user_id": 7, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 7, "sex": 7, "bool_col": 1, "int_col": 7, "bigint_col": 7, "largeint_col": "7", "float_col": 7.7, "double_col": 7.7, "char_col": "char7_1234", "decimal_col": 7}
|
||||
8 doris_8 {"user_id": 8, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 8, "sex": 8, "bool_col": 1, "int_col": 8, "bigint_col": 8, "largeint_col": "8", "float_col": 8.8, "double_col": 8.8, "char_col": "char8_1234", "decimal_col": 8}
|
||||
9 doris_9 {"user_id": 9, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": "Beijing", "age": 9, "sex": 9, "bool_col": 1, "int_col": 9, "bigint_col": 9, "largeint_col": "9", "float_col": 9.9, "double_col": 9.9, "char_col": "char9_1234", "decimal_col": 9}
|
||||
10 doris_10 {"user_id": 10, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00", "city": null, "age": null, "sex": null, "bool_col": null, "int_col": null, "bigint_col": null, "largeint_col": null, "float_col": null, "double_col": null, "char_col": null, "decimal_col": null}
|
||||
1 doris_1 {"user_id": 1, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 1, "sex": 1, "bool_col": 1, "int_col": 1, "bigint_col": 1, "largeint_col": "1", "float_col": 1.1, "double_col": 1.1, "char_col": "char1_1234", "decimal_col": 1}
|
||||
2 doris_2 {"user_id": 2, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 2, "sex": 2, "bool_col": 1, "int_col": 2, "bigint_col": 2, "largeint_col": "2", "float_col": 2.2, "double_col": 2.2, "char_col": "char2_1234", "decimal_col": 2}
|
||||
3 doris_3 {"user_id": 3, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 3, "sex": 3, "bool_col": 1, "int_col": 3, "bigint_col": 3, "largeint_col": "3", "float_col": 3.3, "double_col": 3.3, "char_col": "char3_1234", "decimal_col": 3}
|
||||
4 doris_4 {"user_id": 4, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 4, "sex": 4, "bool_col": 1, "int_col": 4, "bigint_col": 4, "largeint_col": "4", "float_col": 4.4, "double_col": 4.4, "char_col": "char4_1234", "decimal_col": 4}
|
||||
5 doris_5 {"user_id": 5, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 5, "sex": 5, "bool_col": 1, "int_col": 5, "bigint_col": 5, "largeint_col": "5", "float_col": 5.5, "double_col": 5.5, "char_col": "char5_1234", "decimal_col": 5}
|
||||
6 doris_6 {"user_id": 6, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 6, "sex": 6, "bool_col": 1, "int_col": 6, "bigint_col": 6, "largeint_col": "6", "float_col": 6.6, "double_col": 6.6, "char_col": "char6_1234", "decimal_col": 6}
|
||||
7 doris_7 {"user_id": 7, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 7, "sex": 7, "bool_col": 1, "int_col": 7, "bigint_col": 7, "largeint_col": "7", "float_col": 7.7, "double_col": 7.7, "char_col": "char7_1234", "decimal_col": 7}
|
||||
8 doris_8 {"user_id": 8, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 8, "sex": 8, "bool_col": 1, "int_col": 8, "bigint_col": 8, "largeint_col": "8", "float_col": 8.8, "double_col": 8.8, "char_col": "char8_1234", "decimal_col": 8}
|
||||
9 doris_9 {"user_id": 9, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": "Beijing", "age": 9, "sex": 9, "bool_col": 1, "int_col": 9, "bigint_col": 9, "largeint_col": "9", "float_col": 9.9, "double_col": 9.9, "char_col": "char9_1234", "decimal_col": 9}
|
||||
10 doris_10 {"user_id": 10, "date": "2017-10-01", "datetime": "2017-10-01 00:00:00.000000", "city": null, "age": null, "sex": null, "bool_col": null, "int_col": null, "bigint_col": null, "largeint_col": null, "float_col": null, "double_col": null, "char_col": null, "decimal_col": null}
|
||||
|
||||
-- !hive_docker_04 --
|
||||
1 doris_1 {"user_id":1,"date":"2017-10-01","datetime":"2017-10-01 00:00:00","city":"Beijing","age":1,"sex":1,"bool_col":true,"int_col":1,"bigint_col":1,"largeint_col":"1","float_col":1.1,"double_col":1.1,"char_col":"char1_1234","decimal_col":1}
|
||||
2 doris_2 {"user_id":2,"date":"2017-10-01","datetime":"2017-10-01 00:00:00","city":"Beijing","age":2,"sex":2,"bool_col":true,"int_col":2,"bigint_col":2,"largeint_col":"2","float_col":2.2,"double_col":2.2,"char_col":"char2_1234","decimal_col":2}
|
||||
3 doris_3 {"user_id":3,"date":"2017-10-01","datetime":"2017-10-01 00:00:00","city":"Beijing","age":3,"sex":3,"bool_col":true,"int_col":3,"bigint_col":3,"largeint_col":"3","float_col":3.3,"double_col":3.3,"char_col":"char3_1234","decimal_col":3}
|
||||
4 doris_4 {"user_id":4,"date":"2017-10-01","datetime":"2017-10-01 00:00:00","city":"Beijing","age":4,"sex":4,"bool_col":true,"int_col":4,"bigint_col":4,"largeint_col":"4","float_col":4.4,"double_col":4.4,"char_col":"char4_1234","decimal_col":4}
|
||||
5 doris_5 {"user_id":5,"date":"2017-10-01","datetime":"2017-10-01 00:00:00","city":"Beijing","age":5,"sex":5,"bool_col":true,"int_col":5,"bigint_col":5,"largeint_col":"5","float_col":5.5,"double_col":5.5,"char_col":"char5_1234","decimal_col":5}
|
||||
6 doris_6 {"user_id":6,"date":"2017-10-01","datetime":"2017-10-01 00:00:00","city":"Beijing","age":6,"sex":6,"bool_col":true,"int_col":6,"bigint_col":6,"largeint_col":"6","float_col":6.6,"double_col":6.6,"char_col":"char6_1234","decimal_col":6}
|
||||
7 doris_7 {"user_id":7,"date":"2017-10-01","datetime":"2017-10-01 00:00:00","city":"Beijing","age":7,"sex":7,"bool_col":true,"int_col":7,"bigint_col":7,"largeint_col":"7","float_col":7.7,"double_col":7.7,"char_col":"char7_1234","decimal_col":7}
|
||||
8 doris_8 {"user_id":8,"date":"2017-10-01","datetime":"2017-10-01 00:00:00","city":"Beijing","age":8,"sex":8,"bool_col":true,"int_col":8,"bigint_col":8,"largeint_col":"8","float_col":8.8,"double_col":8.8,"char_col":"char8_1234","decimal_col":8}
|
||||
9 doris_9 {"user_id":9,"date":"2017-10-01","datetime":"2017-10-01 00:00:00","city":"Beijing","age":9,"sex":9,"bool_col":true,"int_col":9,"bigint_col":9,"largeint_col":"9","float_col":9.9,"double_col":9.9,"char_col":"char9_1234","decimal_col":9}
|
||||
10 doris_10 {"user_id":10,"date":"2017-10-01","datetime":"2017-10-01 00:00:00","city":null,"age":null,"sex":null,"bool_col":null,"int_col":null,"bigint_col":null,"largeint_col":null,"float_col":null,"double_col":null,"char_col":null,"decimal_col":null}
|
||||
1 doris_1 {"user_id":1,"date":"2017-10-01","datetime":"2017-09-30 16:00:00","city":"Beijing","age":1,"sex":1,"bool_col":true,"int_col":1,"bigint_col":1,"largeint_col":"1","float_col":1.1,"double_col":1.1,"char_col":"char1_1234","decimal_col":1}
|
||||
2 doris_2 {"user_id":2,"date":"2017-10-01","datetime":"2017-09-30 16:00:00","city":"Beijing","age":2,"sex":2,"bool_col":true,"int_col":2,"bigint_col":2,"largeint_col":"2","float_col":2.2,"double_col":2.2,"char_col":"char2_1234","decimal_col":2}
|
||||
3 doris_3 {"user_id":3,"date":"2017-10-01","datetime":"2017-09-30 16:00:00","city":"Beijing","age":3,"sex":3,"bool_col":true,"int_col":3,"bigint_col":3,"largeint_col":"3","float_col":3.3,"double_col":3.3,"char_col":"char3_1234","decimal_col":3}
|
||||
4 doris_4 {"user_id":4,"date":"2017-10-01","datetime":"2017-09-30 16:00:00","city":"Beijing","age":4,"sex":4,"bool_col":true,"int_col":4,"bigint_col":4,"largeint_col":"4","float_col":4.4,"double_col":4.4,"char_col":"char4_1234","decimal_col":4}
|
||||
5 doris_5 {"user_id":5,"date":"2017-10-01","datetime":"2017-09-30 16:00:00","city":"Beijing","age":5,"sex":5,"bool_col":true,"int_col":5,"bigint_col":5,"largeint_col":"5","float_col":5.5,"double_col":5.5,"char_col":"char5_1234","decimal_col":5}
|
||||
6 doris_6 {"user_id":6,"date":"2017-10-01","datetime":"2017-09-30 16:00:00","city":"Beijing","age":6,"sex":6,"bool_col":true,"int_col":6,"bigint_col":6,"largeint_col":"6","float_col":6.6,"double_col":6.6,"char_col":"char6_1234","decimal_col":6}
|
||||
7 doris_7 {"user_id":7,"date":"2017-10-01","datetime":"2017-09-30 16:00:00","city":"Beijing","age":7,"sex":7,"bool_col":true,"int_col":7,"bigint_col":7,"largeint_col":"7","float_col":7.7,"double_col":7.7,"char_col":"char7_1234","decimal_col":7}
|
||||
8 doris_8 {"user_id":8,"date":"2017-10-01","datetime":"2017-09-30 16:00:00","city":"Beijing","age":8,"sex":8,"bool_col":true,"int_col":8,"bigint_col":8,"largeint_col":"8","float_col":8.8,"double_col":8.8,"char_col":"char8_1234","decimal_col":8}
|
||||
9 doris_9 {"user_id":9,"date":"2017-10-01","datetime":"2017-09-30 16:00:00","city":"Beijing","age":9,"sex":9,"bool_col":true,"int_col":9,"bigint_col":9,"largeint_col":"9","float_col":9.9,"double_col":9.9,"char_col":"char9_1234","decimal_col":9}
|
||||
10 doris_10 {"user_id":10,"date":"2017-10-01","datetime":"2017-09-30 16:00:00","city":null,"age":null,"sex":null,"bool_col":null,"int_col":null,"bigint_col":null,"largeint_col":null,"float_col":null,"double_col":null,"char_col":null,"decimal_col":null}
|
||||
|
||||
|
||||
@ -33,7 +33,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
String bucket = context.config.otherConfigs.get("s3BucketName");
|
||||
|
||||
def export_table_name = "outfile_parquet_map_type_export_test"
|
||||
def load_table_name = "outfile_parquet_map_type_load_test"
|
||||
def outFilePath = "${bucket}/outfile/parquet/map_type/exp_"
|
||||
|
||||
|
||||
@ -73,9 +72,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<STRING, LARGEINT> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {'a': 100, 'b': 111}), (2, 'doris2', {'a': 200, 'b': 222}); """
|
||||
@ -108,8 +104,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<LARGEINT, STRING> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {100: 'null', 111:'b'}), (2, 'doris2', {200:'a', 222:'b'}); """
|
||||
@ -144,9 +138,7 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<INT, DECIMAL(15,5)> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {100: 0.123, 111:1.2345}), (2, 'doris2', {200:8738931.12312, 222:999.999}); """
|
||||
sql """ insert into ${export_table_name} values (3, 'doris3', {111: 1111034.123, 333:7771.1231, 399:0.441241, 39999:0.441241}); """
|
||||
@ -180,9 +172,7 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<INT, DOUBLE> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {100: ${Double.MIN_VALUE}, 111:${Double.MAX_VALUE}}), (2, 'doris2', {200: 123.123, 222:0.9999999}); """
|
||||
sql """ insert into ${export_table_name} values (3, 'doris3', {111: 187.123, 333:555.6767, 399:129312.113, 3999:123.12314}); """
|
||||
@ -215,9 +205,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<STRING, DECIMAL(15,5)> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {'k1': 0.123, '111':1.2345}), (2, 'doris2', {'200':8738931.12312, 'doris':999.999}); """
|
||||
@ -253,9 +240,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<STRING, DOUBLE> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {'100': ${Double.MIN_VALUE}, 'doris':${Double.MAX_VALUE}}), (2, 'doris2', {'nereids': 123.123, '222':0.9999999}); """
|
||||
@ -289,9 +273,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<STRING, BIGINT> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {'a': 100, 'b': 111}), (2, 'doris2', {'a': 200, 'b': 222}); """
|
||||
@ -324,9 +305,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<STRING, BOOLEAN> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {'a': true, 'b': false}), (2, 'doris2', {'a': false, 'b': false}); """
|
||||
@ -359,9 +337,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<INT, BOOLEAN> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {100: true, 111:true}), (2, 'doris2', {200: false, 222:false}); """
|
||||
@ -395,8 +370,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<DATETIME, STRING> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {'2023-04-20 01:02:03': 'null', '2018-04-20 10:40:35':'b'}), (2, 'doris2', {'2000-04-20 00:00:00':'a', '1967-12-31 12:24:56':'b'}); """
|
||||
@ -431,9 +404,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<DATETIME, INT> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {'2023-04-20 01:02:03': null, '2018-04-20 10:40:35': 123}), (2, 'doris2', {'2000-04-20 00:00:00':${Integer.MIN_VALUE}, '1967-12-31 12:24:56':${Integer.MAX_VALUE}}); """
|
||||
@ -466,9 +436,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<DATE, INT> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {'2023-04-20': null, '2018-04-20': 123}), (2, 'doris2', {'2000-04-20':${Integer.MIN_VALUE}, '1967-12-31':${Integer.MAX_VALUE}}); """
|
||||
@ -501,9 +468,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<DATE, STRING> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {'2023-04-20': 'null', '2018-04-20': null}), (2, 'doris2', {'2000-04-20':'${Integer.MIN_VALUE}', '1967-12-31':'${Integer.MAX_VALUE}'}); """
|
||||
@ -536,9 +500,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<DATETIME, STRING> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {'2023-04-20 12:20:03': 'null', '2018-04-20 12:59:59': null}), (2, 'doris2', {'2000-04-20 23:59:59':'${Integer.MIN_VALUE}', '1967-12-31 00:00:00':'${Integer.MAX_VALUE}'}); """
|
||||
@ -571,9 +532,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<BIGINT, VARCHAR(20)> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {100: 'null', 111:'b'}), (2, 'doris2', {200:'a', 222:'b'}); """
|
||||
@ -608,9 +566,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<BOOLEAN, VARCHAR(20)> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, "doris1", {true:"null",false:"b"}), (2, "doris2", {true:"a", true:"b"}); """
|
||||
@ -644,9 +599,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<BOOLEAN, STRING> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {1: 'xxx', 0:'b'}), (2, 'doris2', {1:'a', 1:'b'}); """
|
||||
@ -681,8 +633,6 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
def map_field_define = "`m_info` Map<STRING, STRING> NULL"
|
||||
// create table to export data
|
||||
create_table(export_table_name, map_field_define)
|
||||
// create table to load data
|
||||
create_table(load_table_name, map_field_define)
|
||||
|
||||
// insert data
|
||||
sql """ insert into ${export_table_name} values (1, 'doris1', {'doris': 'null', 'nereids':'b'}), (2, 'doris2', {'ftw':'a', 'cyx':'b'}); """
|
||||
@ -710,5 +660,4 @@ suite("test_outfile_parquet_map_type", "p0") {
|
||||
"""
|
||||
} finally {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -26,38 +26,16 @@ suite("test_export_data_types", "p0") {
|
||||
sql """ set enable_nereids_planner=true """
|
||||
sql """ set enable_fallback_to_original_planner=false """
|
||||
|
||||
String ak = getS3AK()
|
||||
String sk = getS3SK()
|
||||
String s3_endpoint = getS3Endpoint()
|
||||
String region = getS3Region()
|
||||
String bucket = context.config.otherConfigs.get("s3BucketName");
|
||||
|
||||
// check whether the FE config 'enable_outfile_to_local' is true
|
||||
StringBuilder strBuilder = new StringBuilder()
|
||||
strBuilder.append("curl --location-trusted -u " + context.config.jdbcUser + ":" + context.config.jdbcPassword)
|
||||
strBuilder.append(" http://" + context.config.feHttpAddress + "/rest/v1/config/fe")
|
||||
|
||||
String command = strBuilder.toString()
|
||||
def process = command.toString().execute()
|
||||
def code = process.waitFor()
|
||||
def err = IOGroovyMethods.getText(new BufferedReader(new InputStreamReader(process.getErrorStream())));
|
||||
def out = process.getText()
|
||||
logger.info("Request FE Config: code=" + code + ", out=" + out + ", err=" + err)
|
||||
assertEquals(code, 0)
|
||||
def response = parseJson(out.trim())
|
||||
assertEquals(response.code, 0)
|
||||
assertEquals(response.msg, "success")
|
||||
def configJson = response.data.rows
|
||||
boolean enableOutfileToLocal = false
|
||||
for (Object conf: configJson) {
|
||||
assert conf instanceof Map
|
||||
if (((Map<String, String>) conf).get("Name").toLowerCase() == "enable_outfile_to_local") {
|
||||
enableOutfileToLocal = ((Map<String, String>) conf).get("Value").toLowerCase() == "true"
|
||||
}
|
||||
}
|
||||
if (!enableOutfileToLocal) {
|
||||
logger.warn("Please set enable_outfile_to_local to true to run test_outfile")
|
||||
return
|
||||
}
|
||||
|
||||
def table_export_name = "test_export_data_types"
|
||||
def table_load_name = "test_load_data_types"
|
||||
def outfile_path_prefix = """/tmp/test_export"""
|
||||
def outfile_path_prefix = """${bucket}/export/p0/all_data_types/exp"""
|
||||
def format = "csv"
|
||||
|
||||
def create_table = {table_name ->
|
||||
sql """ DROP TABLE IF EXISTS ${table_name} """
|
||||
@ -136,37 +114,16 @@ suite("test_export_data_types", "p0") {
|
||||
logger.info("insert result: " + insert_res.toString())
|
||||
qt_select_export1 """ SELECT * FROM ${table_export_name} t ORDER BY user_id; """
|
||||
|
||||
def check_path_exists = { dir_path ->
|
||||
File path = new File(dir_path)
|
||||
if (!path.exists()) {
|
||||
assert path.mkdirs()
|
||||
} else {
|
||||
throw new IllegalStateException("""${dir_path} already exists! """)
|
||||
}
|
||||
}
|
||||
|
||||
def check_file_amounts = { dir_path, amount ->
|
||||
File path = new File(dir_path)
|
||||
File[] files = path.listFiles()
|
||||
assert files.length == amount
|
||||
}
|
||||
|
||||
def delete_files = { dir_path ->
|
||||
File path = new File(dir_path)
|
||||
if (path.exists()) {
|
||||
for (File f: path.listFiles()) {
|
||||
f.delete();
|
||||
}
|
||||
path.delete();
|
||||
}
|
||||
}
|
||||
|
||||
def waiting_export = { export_label ->
|
||||
while (true) {
|
||||
def res = sql """ show export where label = "${export_label}" """
|
||||
logger.info("export state: " + res[0][2])
|
||||
if (res[0][2] == "FINISHED") {
|
||||
break;
|
||||
def json = parseJson(res[0][11])
|
||||
assert json instanceof List
|
||||
assertEquals("1", json.fileNumber[0][0])
|
||||
log.info("outfile_path: ${json.url[0][0]}")
|
||||
return json.url[0][0];
|
||||
} else if (res[0][2] == "CANCELLED") {
|
||||
throw new IllegalStateException("""export failed: ${res[0][10]}""")
|
||||
} else {
|
||||
@ -179,55 +136,32 @@ suite("test_export_data_types", "p0") {
|
||||
def uuid = UUID.randomUUID().toString()
|
||||
def outFilePath = """${outfile_path_prefix}_${uuid}"""
|
||||
def label = "label_${uuid}"
|
||||
format = "csv"
|
||||
try {
|
||||
// check export path
|
||||
check_path_exists.call("${outFilePath}")
|
||||
|
||||
// exec export
|
||||
sql """
|
||||
EXPORT TABLE ${table_export_name} TO "file://${outFilePath}/"
|
||||
EXPORT TABLE ${table_export_name} TO "s3://${outFilePath}/"
|
||||
PROPERTIES(
|
||||
"label" = "${label}",
|
||||
"format" = "csv",
|
||||
"column_separator"=","
|
||||
"format" = "${format}"
|
||||
) WITH S3(
|
||||
"s3.endpoint" = "${s3_endpoint}",
|
||||
"s3.region" = "${region}",
|
||||
"s3.secret_key"="${sk}",
|
||||
"s3.access_key" = "${ak}"
|
||||
);
|
||||
"""
|
||||
waiting_export.call(label)
|
||||
def outfile_url = waiting_export.call(label)
|
||||
|
||||
// check file amounts
|
||||
check_file_amounts.call("${outFilePath}", 1)
|
||||
|
||||
create_table(table_load_name);
|
||||
|
||||
File[] files = new File("${outFilePath}").listFiles()
|
||||
String file_path = files[0].getAbsolutePath()
|
||||
streamLoad {
|
||||
table "${table_load_name}"
|
||||
|
||||
set 'strict_mode', 'true'
|
||||
set 'format', 'csv'
|
||||
set 'column_separator', ','
|
||||
|
||||
file "${file_path}"
|
||||
time 10000 // limit inflight 10s
|
||||
|
||||
check { result, exception, startTime, endTime ->
|
||||
if (exception != null) {
|
||||
throw exception
|
||||
}
|
||||
log.info("Stream load result: ${result}".toString())
|
||||
def json = parseJson(result)
|
||||
assertEquals("success", json.Status.toLowerCase())
|
||||
assertEquals(4, json.NumberTotalRows)
|
||||
assertEquals(0, json.NumberFilteredRows)
|
||||
}
|
||||
}
|
||||
|
||||
qt_select_load1 """ SELECT * FROM ${table_load_name} t ORDER BY user_id; """
|
||||
|
||||
qt_select_load1 """ SELECT * FROM s3(
|
||||
"uri" = "http://${s3_endpoint}${outfile_url.substring(4, outfile_url.length() - 1)}0.${format}",
|
||||
"s3.access_key"= "${ak}",
|
||||
"s3.secret_key" = "${sk}",
|
||||
"format" = "${format}",
|
||||
"region" = "${region}"
|
||||
) ORDER BY c1;
|
||||
"""
|
||||
} finally {
|
||||
try_sql("DROP TABLE IF EXISTS ${table_load_name}")
|
||||
delete_files.call("${outFilePath}")
|
||||
}
|
||||
|
||||
|
||||
@ -235,161 +169,96 @@ suite("test_export_data_types", "p0") {
|
||||
uuid = UUID.randomUUID().toString()
|
||||
outFilePath = """${outfile_path_prefix}_${uuid}"""
|
||||
label = "label_${uuid}"
|
||||
format = "parquet"
|
||||
try {
|
||||
// check export path
|
||||
check_path_exists.call("${outFilePath}")
|
||||
|
||||
// exec export
|
||||
sql """
|
||||
EXPORT TABLE ${table_export_name} TO "file://${outFilePath}/"
|
||||
EXPORT TABLE ${table_export_name} TO "s3://${outFilePath}/"
|
||||
PROPERTIES(
|
||||
"label" = "${label}",
|
||||
"format" = "parquet"
|
||||
"format" = "${format}"
|
||||
) WITH S3(
|
||||
"s3.endpoint" = "${s3_endpoint}",
|
||||
"s3.region" = "${region}",
|
||||
"s3.secret_key"="${sk}",
|
||||
"s3.access_key" = "${ak}"
|
||||
);
|
||||
"""
|
||||
waiting_export.call(label)
|
||||
def outfile_url = waiting_export.call(label)
|
||||
|
||||
// check file amounts
|
||||
check_file_amounts.call("${outFilePath}", 1)
|
||||
|
||||
create_table(table_load_name);
|
||||
|
||||
File[] files = new File("${outFilePath}").listFiles()
|
||||
String file_path = files[0].getAbsolutePath()
|
||||
streamLoad {
|
||||
table "${table_load_name}"
|
||||
|
||||
set 'strict_mode', 'true'
|
||||
set 'format', 'parquet'
|
||||
|
||||
file "${file_path}"
|
||||
time 10000 // limit inflight 10s
|
||||
|
||||
check { result, exception, startTime, endTime ->
|
||||
if (exception != null) {
|
||||
throw exception
|
||||
}
|
||||
log.info("Stream load result: ${result}".toString())
|
||||
def json = parseJson(result)
|
||||
assertEquals("success", json.Status.toLowerCase())
|
||||
assertEquals(4, json.NumberTotalRows)
|
||||
assertEquals(0, json.NumberFilteredRows)
|
||||
}
|
||||
}
|
||||
|
||||
qt_select_load2 """ SELECT * FROM ${table_load_name} t ORDER BY user_id; """
|
||||
|
||||
qt_select_load2 """ SELECT * FROM s3(
|
||||
"uri" = "http://${s3_endpoint}${outfile_url.substring(4, outfile_url.length() - 1)}0.${format}",
|
||||
"s3.access_key"= "${ak}",
|
||||
"s3.secret_key" = "${sk}",
|
||||
"format" = "${format}",
|
||||
"region" = "${region}"
|
||||
) ORDER BY user_id;
|
||||
"""
|
||||
} finally {
|
||||
try_sql("DROP TABLE IF EXISTS ${table_load_name}")
|
||||
delete_files.call("${outFilePath}")
|
||||
}
|
||||
|
||||
// 3. test orc
|
||||
uuid = UUID.randomUUID().toString()
|
||||
outFilePath = """${outfile_path_prefix}_${uuid}"""
|
||||
label = "label_${uuid}"
|
||||
format = "orc"
|
||||
try {
|
||||
// check export path
|
||||
check_path_exists.call("${outFilePath}")
|
||||
|
||||
// exec export
|
||||
sql """
|
||||
EXPORT TABLE ${table_export_name} TO "file://${outFilePath}/"
|
||||
EXPORT TABLE ${table_export_name} TO "s3://${outFilePath}/"
|
||||
PROPERTIES(
|
||||
"label" = "${label}",
|
||||
"format" = "orc"
|
||||
"format" = "${format}"
|
||||
) WITH S3(
|
||||
"s3.endpoint" = "${s3_endpoint}",
|
||||
"s3.region" = "${region}",
|
||||
"s3.secret_key"="${sk}",
|
||||
"s3.access_key" = "${ak}"
|
||||
);
|
||||
"""
|
||||
waiting_export.call(label)
|
||||
def outfile_url = waiting_export.call(label)
|
||||
|
||||
// check file amounts
|
||||
check_file_amounts.call("${outFilePath}", 1)
|
||||
|
||||
create_table(table_load_name);
|
||||
|
||||
File[] files = new File("${outFilePath}").listFiles()
|
||||
String file_path = files[0].getAbsolutePath()
|
||||
streamLoad {
|
||||
table "${table_load_name}"
|
||||
|
||||
set 'strict_mode', 'true'
|
||||
set 'format', 'orc'
|
||||
|
||||
file "${file_path}"
|
||||
time 10000 // limit inflight 10s
|
||||
|
||||
check { result, exception, startTime, endTime ->
|
||||
if (exception != null) {
|
||||
throw exception
|
||||
}
|
||||
log.info("Stream load result: ${result}".toString())
|
||||
def json = parseJson(result)
|
||||
assertEquals("success", json.Status.toLowerCase())
|
||||
assertEquals(4, json.NumberTotalRows)
|
||||
assertEquals(0, json.NumberFilteredRows)
|
||||
}
|
||||
}
|
||||
|
||||
qt_select_load3 """ SELECT * FROM ${table_load_name} t ORDER BY user_id; """
|
||||
|
||||
qt_select_load3 """ SELECT * FROM s3(
|
||||
"uri" = "http://${s3_endpoint}${outfile_url.substring(4, outfile_url.length() - 1)}0.${format}",
|
||||
"s3.access_key"= "${ak}",
|
||||
"s3.secret_key" = "${sk}",
|
||||
"format" = "${format}",
|
||||
"region" = "${region}"
|
||||
) ORDER BY user_id;
|
||||
"""
|
||||
} finally {
|
||||
try_sql("DROP TABLE IF EXISTS ${table_load_name}")
|
||||
delete_files.call("${outFilePath}")
|
||||
}
|
||||
|
||||
// 4. test csv_with_names
|
||||
uuid = UUID.randomUUID().toString()
|
||||
outFilePath = """${outfile_path_prefix}_${uuid}"""
|
||||
label = "label_${uuid}"
|
||||
format = "csv_with_names"
|
||||
try {
|
||||
// check export path
|
||||
check_path_exists.call("${outFilePath}")
|
||||
|
||||
// exec export
|
||||
sql """
|
||||
EXPORT TABLE ${table_export_name} TO "file://${outFilePath}/"
|
||||
EXPORT TABLE ${table_export_name} TO "s3://${outFilePath}/"
|
||||
PROPERTIES(
|
||||
"label" = "${label}",
|
||||
"format" = "csv_with_names",
|
||||
"column_separator"=","
|
||||
"format" = "${format}"
|
||||
) WITH S3(
|
||||
"s3.endpoint" = "${s3_endpoint}",
|
||||
"s3.region" = "${region}",
|
||||
"s3.secret_key"="${sk}",
|
||||
"s3.access_key" = "${ak}"
|
||||
);
|
||||
"""
|
||||
waiting_export.call(label)
|
||||
def outfile_url = waiting_export.call(label)
|
||||
|
||||
// check file amounts
|
||||
check_file_amounts.call("${outFilePath}", 1)
|
||||
|
||||
create_table(table_load_name);
|
||||
|
||||
File[] files = new File("${outFilePath}").listFiles()
|
||||
String file_path = files[0].getAbsolutePath()
|
||||
streamLoad {
|
||||
table "${table_load_name}"
|
||||
|
||||
set 'strict_mode', 'true'
|
||||
set 'format', 'csv_with_names'
|
||||
set 'column_separator', ','
|
||||
|
||||
file "${file_path}"
|
||||
time 10000 // limit inflight 10s
|
||||
|
||||
check { result, exception, startTime, endTime ->
|
||||
if (exception != null) {
|
||||
throw exception
|
||||
}
|
||||
log.info("Stream load result: ${result}".toString())
|
||||
def json = parseJson(result)
|
||||
assertEquals("success", json.Status.toLowerCase())
|
||||
assertEquals(4, json.NumberTotalRows)
|
||||
assertEquals(0, json.NumberFilteredRows)
|
||||
}
|
||||
}
|
||||
|
||||
qt_select_load4 """ SELECT * FROM ${table_load_name} t ORDER BY user_id; """
|
||||
|
||||
qt_select_load4 """ SELECT * FROM s3(
|
||||
"uri" = "http://${s3_endpoint}${outfile_url.substring(4, outfile_url.length() - 1)}0.csv",
|
||||
"s3.access_key"= "${ak}",
|
||||
"s3.secret_key" = "${sk}",
|
||||
"format" = "${format}",
|
||||
"region" = "${region}"
|
||||
) ORDER BY user_id;
|
||||
"""
|
||||
} finally {
|
||||
try_sql("DROP TABLE IF EXISTS ${table_load_name}")
|
||||
delete_files.call("${outFilePath}")
|
||||
}
|
||||
|
||||
|
||||
@ -397,55 +266,32 @@ suite("test_export_data_types", "p0") {
|
||||
uuid = UUID.randomUUID().toString()
|
||||
outFilePath = """${outfile_path_prefix}_${uuid}"""
|
||||
label = "label_${uuid}"
|
||||
format = "csv_with_names_and_types"
|
||||
try {
|
||||
// check export path
|
||||
check_path_exists.call("${outFilePath}")
|
||||
|
||||
// exec export
|
||||
sql """
|
||||
EXPORT TABLE ${table_export_name} TO "file://${outFilePath}/"
|
||||
EXPORT TABLE ${table_export_name} TO "s3://${outFilePath}/"
|
||||
PROPERTIES(
|
||||
"label" = "${label}",
|
||||
"format" = "csv_with_names_and_types",
|
||||
"column_separator"=","
|
||||
"format" = "${format}"
|
||||
) WITH S3(
|
||||
"s3.endpoint" = "${s3_endpoint}",
|
||||
"s3.region" = "${region}",
|
||||
"s3.secret_key"="${sk}",
|
||||
"s3.access_key" = "${ak}"
|
||||
);
|
||||
"""
|
||||
waiting_export.call(label)
|
||||
def outfile_url = waiting_export.call(label)
|
||||
|
||||
// check file amounts
|
||||
check_file_amounts.call("${outFilePath}", 1)
|
||||
|
||||
create_table(table_load_name);
|
||||
|
||||
File[] files = new File("${outFilePath}").listFiles()
|
||||
String file_path = files[0].getAbsolutePath()
|
||||
streamLoad {
|
||||
table "${table_load_name}"
|
||||
|
||||
set 'strict_mode', 'true'
|
||||
set 'format', 'csv_with_names_and_types'
|
||||
set 'column_separator', ','
|
||||
|
||||
file "${file_path}"
|
||||
time 10000 // limit inflight 10s
|
||||
|
||||
check { result, exception, startTime, endTime ->
|
||||
if (exception != null) {
|
||||
throw exception
|
||||
}
|
||||
log.info("Stream load result: ${result}".toString())
|
||||
def json = parseJson(result)
|
||||
assertEquals("success", json.Status.toLowerCase())
|
||||
assertEquals(4, json.NumberTotalRows)
|
||||
assertEquals(0, json.NumberFilteredRows)
|
||||
}
|
||||
}
|
||||
|
||||
qt_select_load5 """ SELECT * FROM ${table_load_name} t ORDER BY user_id; """
|
||||
|
||||
qt_select_load5 """ SELECT * FROM s3(
|
||||
"uri" = "http://${s3_endpoint}${outfile_url.substring(4, outfile_url.length() - 1)}0.csv",
|
||||
"s3.access_key"= "${ak}",
|
||||
"s3.secret_key" = "${sk}",
|
||||
"format" = "${format}",
|
||||
"region" = "${region}"
|
||||
) ORDER BY user_id;
|
||||
"""
|
||||
} finally {
|
||||
try_sql("DROP TABLE IF EXISTS ${table_load_name}")
|
||||
delete_files.call("${outFilePath}")
|
||||
}
|
||||
|
||||
try_sql("DROP TABLE IF EXISTS ${table_export_name}")
|
||||
|
||||
@ -26,38 +26,16 @@ suite("test_export_orc", "p0") {
|
||||
sql """ set enable_nereids_planner=true """
|
||||
sql """ set enable_fallback_to_original_planner=false """
|
||||
|
||||
|
||||
// check whether the FE config 'enable_outfile_to_local' is true
|
||||
StringBuilder strBuilder = new StringBuilder()
|
||||
strBuilder.append("curl --location-trusted -u " + context.config.jdbcUser + ":" + context.config.jdbcPassword)
|
||||
strBuilder.append(" http://" + context.config.feHttpAddress + "/rest/v1/config/fe")
|
||||
|
||||
String command = strBuilder.toString()
|
||||
def process = command.toString().execute()
|
||||
def code = process.waitFor()
|
||||
def err = IOGroovyMethods.getText(new BufferedReader(new InputStreamReader(process.getErrorStream())));
|
||||
def out = process.getText()
|
||||
logger.info("Request FE Config: code=" + code + ", out=" + out + ", err=" + err)
|
||||
assertEquals(code, 0)
|
||||
def response = parseJson(out.trim())
|
||||
assertEquals(response.code, 0)
|
||||
assertEquals(response.msg, "success")
|
||||
def configJson = response.data.rows
|
||||
boolean enableOutfileToLocal = false
|
||||
for (Object conf: configJson) {
|
||||
assert conf instanceof Map
|
||||
if (((Map<String, String>) conf).get("Name").toLowerCase() == "enable_outfile_to_local") {
|
||||
enableOutfileToLocal = ((Map<String, String>) conf).get("Value").toLowerCase() == "true"
|
||||
}
|
||||
}
|
||||
if (!enableOutfileToLocal) {
|
||||
logger.warn("Please set enable_outfile_to_local to true to run test_outfile")
|
||||
return
|
||||
}
|
||||
String ak = getS3AK()
|
||||
String sk = getS3SK()
|
||||
String s3_endpoint = getS3Endpoint()
|
||||
String region = getS3Region()
|
||||
String bucket = context.config.otherConfigs.get("s3BucketName");
|
||||
|
||||
def table_export_name = "test_export_orc"
|
||||
def table_load_name = "test_load_orc"
|
||||
def outfile_path_prefix = """/tmp/test_export"""
|
||||
def outfile_path_prefix = """${bucket}/export/p0/orc/exp"""
|
||||
def format = "orc"
|
||||
|
||||
|
||||
// create table and insert
|
||||
sql """ DROP TABLE IF EXISTS ${table_export_name} """
|
||||
@ -98,37 +76,16 @@ suite("test_export_orc", "p0") {
|
||||
qt_select_export1 """ SELECT * FROM ${table_export_name} t ORDER BY user_id; """
|
||||
|
||||
|
||||
def check_path_exists = { dir_path ->
|
||||
File path = new File(dir_path)
|
||||
if (!path.exists()) {
|
||||
assert path.mkdirs()
|
||||
} else {
|
||||
throw new IllegalStateException("""${dir_path} already exists! """)
|
||||
}
|
||||
}
|
||||
|
||||
def check_file_amounts = { dir_path, amount ->
|
||||
File path = new File(dir_path)
|
||||
File[] files = path.listFiles()
|
||||
assert files.length == amount
|
||||
}
|
||||
|
||||
def delete_files = { dir_path ->
|
||||
File path = new File(dir_path)
|
||||
if (path.exists()) {
|
||||
for (File f: path.listFiles()) {
|
||||
f.delete();
|
||||
}
|
||||
path.delete();
|
||||
}
|
||||
}
|
||||
|
||||
def waiting_export = { export_label ->
|
||||
while (true) {
|
||||
def res = sql """ show export where label = "${export_label}" """
|
||||
logger.info("export state: " + res[0][2])
|
||||
if (res[0][2] == "FINISHED") {
|
||||
break;
|
||||
def json = parseJson(res[0][11])
|
||||
assert json instanceof List
|
||||
assertEquals("1", json.fileNumber[0][0])
|
||||
log.info("outfile_path: ${json.url[0][0]}")
|
||||
return json.url[0][0];
|
||||
} else if (res[0][2] == "CANCELLED") {
|
||||
throw new IllegalStateException("""export failed: ${res[0][10]}""")
|
||||
} else {
|
||||
@ -142,74 +99,32 @@ suite("test_export_orc", "p0") {
|
||||
def outFilePath = """${outfile_path_prefix}_${uuid}"""
|
||||
def label = "label_${uuid}"
|
||||
try {
|
||||
// check export path
|
||||
check_path_exists.call("${outFilePath}")
|
||||
|
||||
// exec export
|
||||
sql """
|
||||
EXPORT TABLE ${table_export_name} TO "file://${outFilePath}/"
|
||||
EXPORT TABLE ${table_export_name} TO "s3://${outFilePath}/"
|
||||
PROPERTIES(
|
||||
"label" = "${label}",
|
||||
"format" = "orc",
|
||||
'columns' = 'user_id, city, age, sex, bool_col, int_col, bigint_col, float_col, double_col, char_col, decimal_col'
|
||||
"format" = "${format}"
|
||||
)
|
||||
WITH S3(
|
||||
"s3.endpoint" = "${s3_endpoint}",
|
||||
"s3.region" = "${region}",
|
||||
"s3.secret_key"="${sk}",
|
||||
"s3.access_key" = "${ak}"
|
||||
);
|
||||
"""
|
||||
waiting_export.call(label)
|
||||
|
||||
// check file amounts
|
||||
check_file_amounts.call("${outFilePath}", 1)
|
||||
def outfile_url = waiting_export.call(label)
|
||||
|
||||
// check data correctness
|
||||
sql """ DROP TABLE IF EXISTS ${table_load_name} """
|
||||
sql """
|
||||
CREATE TABLE IF NOT EXISTS ${table_load_name} (
|
||||
`user_id` INT NOT NULL COMMENT "用户id",
|
||||
`city` VARCHAR(20) COMMENT "用户所在城市",
|
||||
`age` SMALLINT COMMENT "用户年龄",
|
||||
`sex` TINYINT COMMENT "用户性别",
|
||||
`bool_col` boolean COMMENT "",
|
||||
`int_col` int COMMENT "",
|
||||
`bigint_col` bigint COMMENT "",
|
||||
`float_col` float COMMENT "",
|
||||
`double_col` double COMMENT "",
|
||||
`char_col` CHAR(10) COMMENT "",
|
||||
`decimal_col` decimal COMMENT ""
|
||||
)
|
||||
DISTRIBUTED BY HASH(user_id) PROPERTIES("replication_num" = "1");
|
||||
"""
|
||||
|
||||
File[] files = new File("${outFilePath}").listFiles()
|
||||
String file_path = files[0].getAbsolutePath()
|
||||
streamLoad {
|
||||
table "${table_load_name}"
|
||||
|
||||
set 'columns', 'user_id, city, age, sex, bool_col, int_col, bigint_col, float_col, double_col, char_col, decimal_col'
|
||||
set 'strict_mode', 'true'
|
||||
set 'format', 'orc'
|
||||
|
||||
file "${file_path}"
|
||||
time 10000 // limit inflight 10s
|
||||
|
||||
check { result, exception, startTime, endTime ->
|
||||
if (exception != null) {
|
||||
throw exception
|
||||
}
|
||||
log.info("Stream load result: ${result}".toString())
|
||||
def json = parseJson(result)
|
||||
assertEquals("success", json.Status.toLowerCase())
|
||||
assertEquals(100, json.NumberTotalRows)
|
||||
assertEquals(0, json.NumberFilteredRows)
|
||||
}
|
||||
}
|
||||
|
||||
sql """ sync; """
|
||||
|
||||
qt_select_load1 """ SELECT * FROM ${table_load_name} t ORDER BY user_id; """
|
||||
qt_select_load1 """ SELECT * FROM s3(
|
||||
"uri" = "http://${s3_endpoint}${outfile_url.substring(4, outfile_url.length() - 1)}0.${format}",
|
||||
"s3.access_key"= "${ak}",
|
||||
"s3.secret_key" = "${sk}",
|
||||
"format" = "${format}",
|
||||
"region" = "${region}"
|
||||
) ORDER BY user_id;
|
||||
"""
|
||||
|
||||
} finally {
|
||||
try_sql("DROP TABLE IF EXISTS ${table_load_name}")
|
||||
delete_files.call("${outFilePath}")
|
||||
try_sql("DROP TABLE IF EXISTS ${table_export_name}")
|
||||
}
|
||||
|
||||
try_sql("DROP TABLE IF EXISTS ${table_export_name}")
|
||||
}
|
||||
|
||||
@ -183,12 +183,12 @@ suite("test_hive_read_orc", "external,hive,external_docker") {
|
||||
|
||||
def hive_column_define = """
|
||||
user_id INT,
|
||||
`date` STRING,
|
||||
datev2 STRING,
|
||||
`datetime` STRING,
|
||||
datetimev2_1 STRING,
|
||||
datetimev2_2 STRING,
|
||||
datetimev2_3 STRING,
|
||||
`date` DATE,
|
||||
datev2 DATE,
|
||||
`datetime` TIMESTAMP,
|
||||
datetimev2_1 TIMESTAMP,
|
||||
datetimev2_2 TIMESTAMP,
|
||||
datetimev2_3 TIMESTAMP,
|
||||
city STRING,
|
||||
street STRING,
|
||||
age SMALLINT,
|
||||
|
||||
@ -183,12 +183,12 @@ suite("test_hive_read_parquet", "external,hive,external_docker") {
|
||||
|
||||
def hive_column_define = """
|
||||
user_id INT,
|
||||
`date` STRING,
|
||||
datev2 STRING,
|
||||
`datetime` STRING,
|
||||
datetimev2_1 STRING,
|
||||
datetimev2_2 STRING,
|
||||
datetimev2_3 STRING,
|
||||
`date` DATE,
|
||||
datev2 DATE,
|
||||
`datetime` TIMESTAMP,
|
||||
datetimev2_1 TIMESTAMP,
|
||||
datetimev2_2 TIMESTAMP,
|
||||
datetimev2_3 TIMESTAMP,
|
||||
city STRING,
|
||||
street STRING,
|
||||
age SMALLINT,
|
||||
|
||||
@ -238,7 +238,7 @@ suite("test_hive_read_parquet_complex_type", "external,hive,external_docker") {
|
||||
try {
|
||||
def doris_field_define = "`s_info` STRUCT<user_id:INT, date:DATE, datetime:DATETIME, city:VARCHAR(20), age:SMALLINT, sex:TINYINT, bool_col:BOOLEAN, int_col:INT, bigint_col:BIGINT, largeint_col:LARGEINT, float_col:FLOAT, double_col:DOUBLE, char_col:CHAR(10), decimal_col:DECIMAL> NULL"
|
||||
|
||||
def hive_field_define = "`s_info` STRUCT<user_id:INT, `date`:STRING, `datetime`:STRING, city:VARCHAR(20), age:SMALLINT, sex:TINYINT, bool_col:BOOLEAN, int_col:INT, bigint_col:BIGINT, largeint_col:STRING, float_col:FLOAT, double_col:DOUBLE, char_col:CHAR(10), decimal_col:DECIMAL>"
|
||||
def hive_field_define = "`s_info` STRUCT<user_id:INT, `date`:DATE, `datetime`:TIMESTAMP, city:VARCHAR(20), age:SMALLINT, sex:TINYINT, bool_col:BOOLEAN, int_col:INT, bigint_col:BIGINT, largeint_col:STRING, float_col:FLOAT, double_col:DOUBLE, char_col:CHAR(10), decimal_col:DECIMAL>"
|
||||
|
||||
|
||||
// create table to export data
|
||||
|
||||
Reference in New Issue
Block a user