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

State Of The Map 2024

#1 Fri 20 October 2017 16:52

hm85
Participant occasionnel
Date d'inscription: 22 Jan 2015
Messages: 21

QGIS 2.18.13: Virtual layer et fontion ROW_NUMBER() OVER()

Bonjour
Je souhaite dans QGIS sous virtual layer créer une colonne d'identifiant allant de 1 à n.
La fonction row_number() over() ne fonctionne pas.
Je ne peux pas utiliser DBMANAGER puisque mes différentes données ne sont pas toutes dans la même base (posgresql et shape).
J'ai tenté ROWID mais l'identifiant créer ne démarre pas à 1.
Avez vous une idée ?
Merci pour votre aide

Hors ligne

 

#2 Mon 23 October 2017 00:26

JD
Moderateur
Date d'inscription: 8 Aug 2013
Messages: 725

Re: QGIS 2.18.13: Virtual layer et fontion ROW_NUMBER() OVER()

Bonsoir,

voici un exemple :

Code:

with req as
(select rowid, * from COMMUNE where NOM_COM like '%a%' LIMIT 10)
select 
    (select count(*)+1
    from req a
    where a.rowid < b.rowid) as id
    , b.*
from req b

* from COMMUNE where NOM_COM like '%a%' LIMIT 10

La partie en gras est à adapter selon vos besoins.

Cordialment

Dernière modification par lejedi76 (Mon 23 October 2017 00:26)

Hors ligne

 

#3 Mon 23 October 2017 11:33

hm85
Participant occasionnel
Date d'inscription: 22 Jan 2015
Messages: 21

Re: QGIS 2.18.13: Virtual layer et fontion ROW_NUMBER() OVER()

Merci beaucoup, c'est exactement ce que je cherchais.

Hors ligne

 

Pied de page des forums

Powered by FluxBB