Большое спасибо за ответ. но на самом деле мне нужно проверить, является ли схема куста той же самой Sas-схемой, поэтому мне нужно указать "timestamptype" в кусте с Datetime в SAS, который имеет тип NUm, а также тип Integer в кусте имеет соответствующий тип данных как NUM в SAS, так что в основном мне также нужно сравнить столбец «Формат» в схеме SAS со схемой улья.

вниваю два кадра данных (в основном это схемы двух разных источников данных, один из куста, а другой из SAS9.2)

Мне нужно проверить структуру для обоих источников данных, поэтому я преобразовал схему в два кадра данных, и вот они:

Схема SAS будет иметь следующий формат:

scala> metadata.show

+----+----------------+----+---+-----------+-----------+
|S_No|        Variable|Type|Len|     Format|   Informat|
+----+----------------+----+---+-----------+-----------+
|   1|        DATETIME| Num|  8|DATETIME20.|DATETIME20.|
|   2|   LOAD_DATETIME| Num|  8|DATETIME20.|DATETIME20.|
|   3|     SOURCE_BANK|Char|  1|       null|       null|
|   4|        EMP_NAME|Char| 50|       null|       null|
|   5|HEADER_ROW_COUNT| Num|  8|       null|       null|
|   6|       EMP_HOURS| Num|  8|       15.2|       15.1|
+----+----------------+----+---+-----------+-----------+

Аналогичным образом метаданные улья будут иметь следующий формат:

df2.show

+----------------+-------------+
|        Variable|         type|
+----------------+-------------+
|        datetime|TimestampType|
|   load_datetime|TimestampType|
|     source_bank|   StringType|
|        emp_name|   StringType|
|header_row_count|  IntegerType|
|       emp_hours|   DoubleType|
+----------------+-------------+

Теперь мне нужно сравнить их по типу столбца и проверить структуру. Для эквивалента типа «Num» аналогичен «Integertype».

Наконец, мне нужно сохранить нулевое значение в качестве вывода, если проверка схемы прошла успешно

Как мне этого добиться?

Ответы на вопрос(1)

Ваш ответ на вопрос