2015-12-03 7 views
7

BigQueryで[x、y、z列名]以外の[*]を選択する方法はありますか?私はMySQLのためのいくつかの解決策を見ていますが、それがBQに適用されるかどうかはわかりませんGoogle BigQueryを除くすべての列を選択しますか?

ありがとうございました。

+1

私が持っている唯一の答えは、アプローチの延長のようなものはhttp://stackoverflow.com/questions/34010002/how-to-create-dummy-variable-columns-for-thousands-of-categories-in-google-ですあなたのために働くものではないように見えるビッグク –

答えて

16

それをできるようになります現在のBigQueryのSQL方言では何もありません。この機能は、BigQueryの標準SQLで使用できるようになりました:これは、要求を繰り返しているので、しかし、我々は

SELECT * EXCEPT (a, b, c) FROM ... 

アップデートをサポートするための作業項目を追加しました。公共ウィキペディアのテーブルを使用してhttps://cloud.google.com/bigquery/sql-reference/enabling-standard-sql 例で詳細 - タイトルとコメントを除くすべての列を選択します。SELECT * EXCEPT()構文に加えて

select * except(title, comment) from publicdata.samples.wikipedia limit 10 
+0

それは素晴らしいです!これを実装していただきありがとうございます! @MoshaPasumansky – wubr2000

+2

しばらく時間がかかりましたが、現在利用可能です。回答が更新されました。 –

+0

こんにちは@MoshaPasumanskyこの機能を追加していただきありがとうございます!しかし、私はちょうどBQでそれを試して、それは動作しませんでした。あなたは私に正確な構文を教えてもらえますか?ありがとうございました。 – wubr2000

2

SELECT * REPLACE()構文がある - 標準SQLでサポートの両方が
使用法として、シンプルかつ明白である導入ドキュメントあたり

何それほど明白であることは、あなたが

WITH orders AS 
    (SELECT 5 as order_id, 
    "sprocket" as item_name, 
    200 as quantity) 
SELECT * EXCEPT (order_id) REPLACE ("widget" AS item_name), "more" as more_fields 
FROM orders; 
以下の例のように、同じ SELECTで一緒に両方を使用することができるということです
関連する問題