0
我的Cloudera VM基於一些WHERE子句錯誤裏面的where子句而在星火SQL比較項目
df = sqlContext.read.format('com.databricks.spark.csv').options(header='true').load('file:///home/cloudera/sample.csv')
df.registerTempTable("closedtrips")
result = sqlContext.sql("SELECT id,`safety rating` as safety_rating, route FROM closedtrips WHERE `trip frozen` == 'YES'")
運行火花1.6.0版本
我創建從CSV文件中的數據幀,現在過濾列
但是,它給了我的SQL行的運行時錯誤。
py4j.protocol.Py4JJavaError: An error occurred while calling o21.sql.
: java.lang.RuntimeException: [1.96] failure: identifier expected
SELECT consigner,`safety rating` as safety_rating, route FROM closedtrips WHERE `trip frozen` == 'YES'
^
我在哪裏錯了?
上面的命令在VM命令行失敗,當databricks環境跑
而且爲什麼是列名的情況下,在VM敏感,它沒有認識到「行程凍結」,因爲實際的列是「旅行卻工作正常凍結」。 在VM
我將它定義爲sqlcontext,sqlContext = SQLContext(sc) 如果將其定義爲hivecontext,則大小寫敏感性問題將得到解決? –
我相信這應該可以解決'失敗:標識符預期'問題;我不確定不區分大小寫。 –