Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark SparkSQL列查询是否不显示列内容?_Apache Spark_Hadoop_Pyspark_Apache Spark Sql_Azure Hdinsight - Fatal编程技术网

Apache spark SparkSQL列查询是否不显示列内容?

Apache spark SparkSQL列查询是否不显示列内容?,apache-spark,hadoop,pyspark,apache-spark-sql,azure-hdinsight,Apache Spark,Hadoop,Pyspark,Apache Spark Sql,Azure Hdinsight,我通过df.saveAsTable 当我运行以下查询时,我会收到这些结果 spark.sql("""SELECT * FROM mytable """).show() 我得到了DataFrame及其所有列和所有数据的视图 但是当我跑的时候 spark.sql("""SELECT 'NameDisplay' FROM mytable """).show() 我收到的结果如下所示 | NameDisplay| |--| | NameDisplay | | NameDisplay | | N

我通过
df.saveAsTable

当我运行以下查询时,我会收到这些结果

spark.sql("""SELECT * FROM mytable """).show()
我得到了DataFrame及其所有列和所有数据的视图

但是当我跑的时候

spark.sql("""SELECT 'NameDisplay' FROM mytable """).show()
我收到的结果如下所示

|  NameDisplay|
|--|
| NameDisplay | 
| NameDisplay | 
| NameDisplay | 
| NameDisplay | 
| NameDisplay | 
| NameDisplay | 

当我运行
select*
时,NameDisplay肯定是表中的一列-为什么在第二个查询中不显示它

问题是在列名上使用引号。需要通过反勾“`namesplay`

选择
'namesplay'
,在SQL中,是选择文本“namesplay”。在这方面,你得到的结果实际上是有效的

要选择“名称显示”列的值,则必须发出:

"SELECT NameDisplay FROM mytable "
或者,如果您需要引用它(可能是在列是这样创建的,或者有空格,或者区分大小写的情况下):


这是SQL语法,与Spark无关。

谢谢!然而,我发现双引号也不起作用,我需要通过倒勾转义`
"""SELECT `NameDisplay` FROM mytable"""