0

キー「PID」で2つのフュージョンテーブルをマージしました。ここで、SELECT クエリ WHERE PID = "value' を実行したいと思います。PID という名前の列がテーブルに存在しないというエラーが返されます。別の列のクエリを実行すると、次の結果が得られます。

"kind": "fusiontables#sqlresponse",
 "columns": [
  "\ufeffPID",
  "Address",
  "City",
  "Zoning"
 ],
 "rows": [
  [
   "001-374-079",
   "# LOT 15 MYSTERY BEACH RD",
   "No_City_Value",
   "R-1"
  ],

列名が「PID」から「\ufeffPID」に変更されたようで、GET Url を読み取るための構文を何度取得しようとしても、エラーが発生し続けます。

マージされたテーブルのキーに対するクエリに制限はありますか? 列の正しい名前を取得できないように見えるため、回避策は列IDを使用することですが、それもオプションではないようです。URL は次のとおりです。

https://www.googleapis.com/fusiontables/v1/query?sql=SELECT ' PID','Address','City','Zoning' FROM 1JanYNl3T45kFFxqAmGS0BRgkopj4AS207qnLVQI WHERE '\ufeffPID' = 001-493-078&key=myKey

乾杯

4

1 に答える 1

0

\ufeff についての説明はありません。これは Unicode 文字の 'ZERO WIDTH NO-BREAK SPACE' であり、UI では見えないため、実際には列名に含まれていると考えられます。したがって、まず、ベース テーブルの名前を変更して、それが機能するかどうかを確認することをお勧めします。

マージ テーブルの列 ID の形式は、ベース テーブルの列 ID とは異なります。それらを取得する簡単な方法は、目的のフィルターをタブの 1 つに追加し (どのタイプでも構いません)、[ツール] > [公開] を実行することです。上部のテキスト (「メールまたは IM でリンクを送信」) には、必要なものを含むクエリ URL があります。http://meyerweb.com/eric/tools/dencoder/などの URL デコーダーを介して実行すると、PID の列 ID が col0>>0 であることがわかります。

ロッド

于 2013-02-28T18:15:02.533 に答える