Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Suite à un problème technique intervenu entre le 22 et le 23 mars, nous avons du procéder dans la soirée du 25 mars, à la restauration de la base de données du 24 mars (matinée).

En clair, nous avons perdu vos contributions et inscriptions du dimanche 24 et du lundi 25 mars.
Nous vous prions de nous excuser.

#1 Wed 15 February 2023 17:50

Sylvain M.
Participant assidu
Lieu: Saint-Pierre-des-Nids (53)
Date d'inscription: 8 Sep 2005
Messages: 981

SQL : Convertir chaine en Array avec SQLite

Salut à tous,

J'ai des données dans une colonne, qui sont une concaténation de valeurs séparées par des virgules.
Je souhaite créer autant de lignes que de valeur dans cette colonne.

J'y arrive bien avec PostGreSQL avec une requête de ce type :

Code:

trim(unnest(string_to_array(monchamp, ',')))

Mais j'aimerais bien le faire directement avec les couches virtuelles de QGis, donc avec SQLite, sans passer par PostGreSQL.

J'ai testé* avec split(monchamp), mais ça n'a pas marché.

Merci pour vos conseils smile


* ça m'avait été proposé par ChatGPT, à "qui" j'avais posé la question et qui m'avait répondu "Notez que la fonction "split" est disponible uniquement pour les versions de SQLite 3.31.0"
Pourtant, un select sqlite_version(); depuis les couches virtuelles m'indique que je suis en "3.39.4", donc théoriquement OK pour "split()".


Sylvain M.

Hors ligne

 

#2 Wed 15 February 2023 20:36

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1534

Re: SQL : Convertir chaine en Array avec SQLite

Bonsoir,

Possible avec une cte recursive apparemment:
https://stackoverflow.com/questions/346 … ure-sqlite

Nicolas

Hors ligne

 

#3 Thu 16 February 2023 12:06

Sylvain M.
Participant assidu
Lieu: Saint-Pierre-des-Nids (53)
Date d'inscription: 8 Sep 2005
Messages: 981

Re: SQL : Convertir chaine en Array avec SQLite

Merci Nicolas smile

Malheureusement, je ne maitrise pas encore les requêtes récursives ... (et je n'ai pas le temps de m'y pencher actuellement, même si je mesure l'intérêt !)

Du coup, j'ai plus vite fait de passer ma table sous PostGreSQL pour gérer cela avec string_to_array()

Mais je suis surpris que cette fonction split() ne marche pas, alors que je vois des références à son sujet hmm
D'autant que je n'ai pas de réponse du type "no such function: split", mais un résultat "NULL" pour chaque entité... ?


Sylvain M.

Hors ligne

 

Pied de page des forums

Powered by FluxBB