当我们通过int val作为参数时,使用int val的squ sql查询不起作用



我的SQL查询,其整数值为一个参数。

工作:

sqlContext.sql("select concat(MinRange, '-', MaxRange) from range where 20 >= MinRange and 20 < MaxRange")

无法正常工作:

sqlContext.sql("select concat(MinRange, '-', MaxRange) from range where "+intval+">= MinRange and "+intval+" < MaxRange")

也有字符串Interpolator,不起作用:

sqlContext.sql(s"select concat(MinRange, '-', MaxRange) from range where $intval >= MinRange and $intval < MaxRange")

我敢肯定,我缺少一些非常基本的东西。

首先构造查询字符串然后执行它将工作。

val intval=10
val qry= "select concat(MinRange, '-', MaxRange) from range where "+intval+">= MinRange and "+intval+" < MaxRange"
sqlContext.sql(qry)   

您是否在下面进行了检查:

1)因为U r构建了&lt;列名&gt;运行时间,可以检查&lt; lt; column name&gt;实际存在于"范围"表中。

2)您是否检查了运行时 Intval 变量的实际值是什么?通过给出默认值,请确保它没有获得零值。

相关内容

  • 没有找到相关文章

最新更新