次の問題が発生しました。
まず、私のデータは次のような文字列です: decimals, decimals
例:1.345, 3.456
次のピッグ スクリプトを使用して、この列 (QQ など) を 2 つの列に配置しました。
result = FOREACH old_table GENERATE FLATTEN(STRSPLIT(QQ, ',')) as (COL1: double, COL2: double);
次に、最初のフィールド、次に2番目のフィールドで注文したいと思います。
result_ordered = ORDER result BY COL1, COL2;
しかし、次のような結果が得られました。
> 59.619198977071434 -151.4586740547339
> 60.52611316847121 -150.8005347076273
> 64.8310014577408 -147.84786488835852
> 7.059652849999997 125.59985130999996
これは、データがまだ double ではなく文字列として順序付けられていることを意味します。誰かがこの問題に遭遇し、それを解決する方法を知っていますか? 前もって感謝します!