查询嵌套列

时间:2019-04-08 19:48:43

标签: sql apache-spark apache-spark-sql

我有下表:

+---------------+--------------------+-------+
|       col_name|           data_type|comment|
+---------------+--------------------+-------+
|_corrupt_record|              string|   null|
|             af|              bigint|   null|
|       dst_addr|              string|   null|
|       dst_name|              string|   null|
|        endtime|              bigint|   null|
|           from|              string|   null|
|             fw|              bigint|   null|
|       group_id|              bigint|   null|
|            lts|              bigint|   null|
|         msm_id|              bigint|   null|
|       msm_name|              string|   null|
|       paris_id|              bigint|   null|
|         prb_id|              bigint|   null|
|          proto|              string|   null|
|         result|array<struct<erro...|   null|
|           size|              bigint|   null|
|       src_addr|              string|   null|
|      timestamp|              bigint|   null|
|            ttr|              double|   null|
|           type|              string|   null|
+---------------+--------------------+-------+

如何使DESC显示result列?我想知道如何构造查询,以便可以检索其中的列。我不知道结构。我正在使用Spark SQL查询,因此没有接口。

1 个答案:

答案 0 :(得分:0)

在Spark SQL中,您可以执行以下命令。

describe extended databasename.tablename;

在结果中查找架构-

# Detailed Table Information  CatalogTable(
       Table ...
       Owner ...
       Created...
       Lat Access ...
       Type ...
       Schema

但是,输出模式未格式化。如果您拥有广泛的架构,则最好编写一个小型程序来为您格式化结果。

命令源- Databricks documentation