PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 10/09/2017 12:48:20

extension ltree

Bonjour,

Dans un précédent projet en 9.5, j'avais fait :

create table ltree_node (
 node_id integer primary key
    default nextval('ltree_node_sequence')
 ,node_name text
 ,node_path ltree
);

create index path_gist_idx on ltree_node using gist(node_path);

insert into ltree_node(node_name, node_path) select
 substring(input_line, 
    char_length(substring(
        input_line from '[0-9.]*[ ]')) + 1) as node_name
 ,cast(substring(input_line from '[0-9.]*') as ltree) as node_path
from tree_staging;

Et ça marchait ! Maintenant, je suis en 9.6 et ça ne marche pas !

Le

as ltree 

me vaut

ERROR:  syntax error
DETAIL:  Unexpected end of line.
********** Error **********

ERROR: syntax error
SQL state: 42601
Detail: Unexpected end of line.

idem avec

substring(input_line from '[0-9.]*')::ltree

Je ne trouve rien sur le net... Qqun pourrait-il éclairer ma lanterne ?

Merci !

Hors ligne

#2 10/09/2017 15:10:51

Re : extension ltree

et avec

select
         substring(input_line, char_length(substring(input_line from '[0-9.]*[ ]')) + 1) as node_name
        ,text2ltree(substring(input_line from '[0-9.]*')) as node_path
from staging;

j'me ramasse

psql:load.sql:4: ERROR:  syntax error
DETAIL:  Unexpected end of line.

Hors ligne

#3 10/09/2017 15:55:16

gleu
Administrateur

Re : extension ltree

Le "Unexpected end of line" est un message provenant de l'extension ltree. N'utilisant pas ltree, je n'ai pas d'idée sur ce que cela signifie mais il faut chercher au niveau de cette extension.


Guillaume.

Hors ligne

#4 10/09/2017 22:48:09

Re : extension ltree

Merci !

Je vais envoyer un message aux russes....

Hors ligne

#5 11/03/2020 16:08:00

Cédric
Membre

Re : extension ltree

Bonjour

J'ai eu le même soucis que j'ai réglé en identifiant les champs se terminant par un point.
 
   
      SELECT * FROM table where substring(path,length(path),length(path))='.'

Hors ligne

Pied de page des forums