sql >> Database >  >> RDS >> PostgreSQL

Syntaxisfout bij of nabij USING

Ik vermoed dat je het veld VALUE in een filter of iets dergelijks in het mapbestand gebruikt (moeilijk te zeggen zonder mapbestand). Dit filter moet kolomnamen met hoofdletters verwachten en daarom had de oorspronkelijke zoekopdracht ook kolomnamen met hoofdletters:

select g.gid, g.geom, g.basin, a.\"DATE\", a.\"VALUE\" from.... 

Als dat het geval is, hoeft u alleen de kolommen die door uw procedure worden geretourneerd, met een hoofdletter te schrijven:

RETURNS table (
           gid integer,
           geom geometry(MultiPolygon,4326),
           basin double precision,
           "DATE" timestamptz,
           "VALUE" double precision
           )

Onthoud dat in PostgreSql het geval van kolom- en tabelnamen van belang is als je ze dan omringt met dubbele aanhalingstekens. Deze vraag:

SELECT VALUE from ...

is hoofdletteronafhankelijk, terwijl deze:

SELECT "VALUE" from ...

vereist echt een tabel met kolomnamen met hoofdletters. En tabellen met kolomnamen met hoofdletters vereisen dubbele aanhalingstekens:

CREATE TABLE test ("VALUE" text, .....



  1. SELECT mysql-kolom met door komma's gescheiden waarden

  2. Slaapstand @OrderBy met klasse waarnaar wordt verwezen

  3. Hoe een kolom toevoegen als deze niet bestaat op PostgreSQL?

  4. Oracle:jaar moet tussen -4713 en +9999 liggen en mag niet 0 . zijn