我有两个桌子。
第一个表data
包含id
和features
。第二个表result
包含value
。
我想从值中减去要素,并且最终表包含id,结果相减。
val total=sqlContext.sql("SELECT t1.id,t1.features ,t2.value , t1.features-t2.value AS features FROM data t1 INNER JOIN result t2")
但是由于数据类型不匹配,给出错误无法解析(t1.features - t2.value)
:(t1.features - t2.value)
中的类型不同。
这里我以示例为例:
scala> spark.sql("select * from test_table").show
+-------+-------+
|column1|column2|
+-------+-------+
| b| 2|
| a| 1|
+-------+-------+
scala> spark.sql("select a.*,a.column2 -b.column2 as substractCol from test_table a inner join test_table b on a.column1 =b.column1 and a.column2=b.column2 ").show
+-------+-------+------------+
|column1|column2|substractCol|
+-------+-------+------------+
| b| 2| 0|
| a| 1| 0|
+-------+-------+------------+