2017-04-07 6 views
0

何がうまくいかないのかわかりません。私はクエリのサブ部分を試しましたが、まだ問題を解決できませんでした。エラー: "DISTINCT"の近く:構文エラー

表形式:

poi(id int, minX float, minY float, maxX float, maxY float) 
tag(poi_id int, key text, value text) 


SELECT (DISTINCT(tag.key,tag.value), (poi.minlon*poi.minlat) 
FROM tag,poi 
WHERE tag.poi_id=tag.poi_id 
GROUP BY tag.key,tag.value; 
+0

tag.key、tag.valueのかっこを削除します。また、SELECTとDISTINCTの間にある左括弧も削除します。 – kojow7

答えて

1

DISTINCTは、関数ではなく、パラメータを取りません。また、SELECTキーワードの直後に続く必要があります。 DISTINCTは返されたタプル(行)全体に適用され、個々の列の値には適用されません。

+0

私はそれを考えていました。 DISTINCTが乗算結果に干渉するかどうか疑問に思っていましたか? – Newbie

+0

計算結果を含むすべての列に重複値が存在する場合、重複した行は最終結果から削除され、その行が1回だけ残されます。 – kojow7

+0

これを確認する簡単なテストを設定できるはずです。 tag.keyとtag.valueの値が同じ2つのレコードを指定し、minlonとminlatの値を最初のレコードでは(5,10)、2番目のレコードでは(2,25)に設定します。 – kojow7

関連する問題