2017-07-06 3 views
0

私は、次のサンプル形式でGoogleクラウドストレージに保存してる大csvファイルがあります。「合計」の情報をCSVファイルの最後の行を削除し

id,revenue 
1,100 
2,100 
... 
Totals 
All,12000 

または:

title,profit 
titanic,200 
avatar,400 
fox total,600 
paramount total,400 
grand total,1000 

これは、CSVファイル内の実際の有効な情報ではないため(データの下のcsvの集計情報が多いため)、合計を含めてすべての行を削除できるようにしたいのです。

これを削除する方法はありますか?現在、csvファイルをGoogle Cloud Storageに保存してから、Big Queryのcsv-importを使用して直接インポートしています。おそらく、BigQueryなどでcsvを読み込むときに行番号をcsvファイルに追加する方法があるので、最後にdelete文を実行できますか?

答えて

1

インポート後にMAX()行を削除するとどうなりますか?

#standardSQL 
DELETE 
FROM `project.dataset.table` 
WHERE revenue = (
    SELECT revenue 
    FROM `project.dataset.table` 
    ORDER BY taxi_trips DESC 
    LIMIT 1 
) 

またはIDのために行く "すべて":

#standardSQL 
DELETE 
FROM `project.dataset.table` 
WHERE id = "All" 
+0

どのように我々は 'max_row'を知っていますか?自動増分IDがない場合(上記の変更された質問)また、idは通常「すべて」ではありませんが、これは単なる例です。 – David542

+1

すべての正の数を加えた合計であれば、それは最大の数でなければならないかどうか? –

+0

いいえ、小計またはレコード数はありません。より直接的な質問は、行番号をBigQueryでCSVインポートに追加する方法はありますか?また、これは一般的なケースではありません(私はすべてのcsv/excelファイルの約1/3が底に表示されていることを示しています)。 – David542

関連する問題