3

フュージョン テーブル クエリの WHERE 部分の構文を理解していないようです。styles: 配列を作成しようとしています (4 つのスタイルのみ...)。

クエリの WHERE 部分をコメントアウトすると...すべてが実行されます...ただし、WHERE クエリでは何も読み込まれません。

次のようになります (注: 名前は変更されていますが、句読点は変更されていません):

var layer = new google.maps.FusionTables Layer({
    query:{
        select: 'geometry',
        from: 'Encrypted ID'
        where: 'ColumnName' = 'String',
    }

});

この WHERE クエリをさまざまな構文で試してみました (特に、実数にリンクできる 'ColumnName' があります)。

ここでどこがうまくいかなかったのか、とても混乱しています....「ジオメトリ」列の選択からROWIDを使用する必要がありますか? 操作と引用符の組み合わせが悪いのでしょうか?...できれば助けてください。

どうもありがとう!!!

4

2 に答える 2

4

WHERE 句に誤りがあります。

適切なものは次のとおりです。

where: "'ColumnName' = 'String'",

ところで、何かが機能していない場合は、最初にJavaScriptエラーコンソールを常に確認する必要があります...

于 2013-01-31T11:57:36.247 に答える
2

ドキュメントからhttps://developers.google.com/fusiontables/docs/v2/sql-reference

(元のリンク: https://developers.google.com/fusiontables/docs/v1/sql-reference#Select、 douglasg14b によるコメントごとに更新)

<column_condition>  
Used in the WHERE clause. The syntax is: <column_name> <operator> <value>

<column_name> is described earlier in this table.

For <operator>, use one of the following with a <number>:

>, <, >=, <=, =
For <operator>, use one of the following with a <string>:

>, <, >=, <=, =
LIKE
MATCHES (equivalent to LIKE)
STARTS WITH
ENDS WITH
CONTAINS
CONTAINS IGNORING CASE
DOES NOT CONTAIN
NOT EQUAL TO
IN

<、<、>=、<=、= を文字列で使用しないことをお勧めします。ドキュメントにはできると書かれていますが、問題があることがわかりました。また、スペースを含む文字列と列名を一重引用符で囲む必要があります。

于 2013-01-31T11:48:35.307 に答える