2017-02-24 112 views
-1

我有一个spark接受值的sql查询。如何将变量传递给SQL字符串

Dataset getQuery = spark.sql("select * from trafficdata where message_time between 1486036800000 and 1486108800000 ") 

我想这一次是作为变量像

Long val1 = 1486036800000 
Long val2 = 1486108800000 
Dataset getQuery = spark.sql("select * from trafficdata where message_time between $val1 and $val2 ") 

$val1但它不工作尝试。任何人都可以建议,如何在java中做到这一点?

+2

的可能的复制(HTTP://计算器。 com/questions/9643610/java-including-variables-within-strings) –

回答

0

,我认为你应该写查询作为

"select * from trafficdata where message_time between '" + val1 + "' and '" + val2 + "'" 
+3

sql injection alert – Reimeus

+0

是的,你应该照顾 – deenbandhu

+0

谢谢..我工作 –

-1

尝试一下这样的:[?爪哇 - 包括字符串中的变量]

getQuery = spark.sql(String.format("select * from trafficdata where message_time between %d and %d ", val1, val2)); 
相关问题