2017-06-29 7 views
0

なぜスティングが比較されないのですか?スパークを使用してハイブのレコードをフィルタリングする方法

私のように私の入力を持っている -

+-------+ 
|  y| 
+-------+ 
| ""no""| 
| ""no""| 
| ""no""| 
|""yes""| 
| ""no""| 
| ""no""| 
| ""no""| 
| ""no""| 
|""yes""| 
| ""no""| 
| ""no""| 
| ""no""| 
| ""no""| 
|""yes""| 
| ""no""| 
| ""no""| 
+-------+ 

そして、私はquerying-

sqlContext.sql("select count(y) from dummy where y='yes'").show() 

だと出力がある -

+---+ 
|_c0| 
+---+ 
| 0| 
+---+ 

yはDDL

に文字列型として宣言されています
+0

は '.replaceAll( "\" \ ""、 "")'以前を使用していたなら – philantrovert

答えて

1

あなたはこれを試してみてください:あなたのデータだけではなく、yes""yes""を持って

sqlContext.sql("select count(y) from dummy where y='\"\"yes\""'").show() 

注意を。

あなたはまだあなたのデータのクレンジングを必要とする:)

またはこの方法を実行します。D:

sqlContext.sql("select count(y) from dummy where y like '%yes%'").show() 
+0

もう一度ありがとう!それは働いた.. – Ninja

+0

あなたはあなたのケースでは、質問ごとに動作する場合は、答えまたはupvoteを '受け入れる 'ことができます。 –

関連する問題