13 Kohteiden puoliautomaattinen numerointi
QGIS:ssä voit numeroida kentän ”treenumber” juoksevasti kenttälaskurissa, alkaen tietystä numerosta ja nollien kanssa, yhdistämällä funktiot rownumber()
ja lpad()
.
Tässä on esimerkki siitä, miltä tämä voisi näyttää:
Vaihe 1: Juokseva numerointi tietystä numerosta alkaen.
Jos haluat aloittaa juoksevan numeroinnin tietyllä alkunumerolla, voit käyttää rownumber()-ohjelmaa
ja lisätä alkunumeron. Esimerkiksi:
@row_number + 100
Tämä lisää jokaisen rivin numeroon 100, joten numerointi alkaa numerosta 101.
Vaihe 2: Johtavat nollat oikeaa lajittelua varten
Voit käyttää lpad()-
funktiota nollien lisäämiseen sen varmistamiseksi, että arvot on kohdistettu oikein lajittelua varten. Lpad()-funktion
muoto on seuraava:
lpad(string, Länge, Zeichen)
string
: Arvo, jonka haluat muotoilla (esim.@rivin_luku + 100
).Pituus
: Tuloksen kokonaispituus nollat mukaan lukien.Hahmo
: Merkki, jota haluat käyttää pehmusteena (esim.0
).
Vaihe 3: Molempien toimintojen yhdistelmä
Juoksevaa numerointia, joka alkaa 101:stä, ja kaksinumeroista tulostusta johtavilla nollilla koskevien toimintojen yhdistelmä näyttää seuraavalta:
lpad(@row_number + 100, 5, '0')
Tämä tarkoittaa:
- Numerointi alkaa numerosta 101.
- Tuloksen pituus on 5 merkkiä.
- Nollat lisätään numeron eteen, jos se on lyhyempi kuin 5 merkkiä.
Esimerkki:
Jos @rivin_luku
on arvo 1
, lpad(@rivin_luku + 100, 5, '0')
palauttaa arvon 00101
.
Täydellinen esimerkki kenttälaskurissa:
Jos haluat päivittää ”treenumber”-kentän, voit syöttää tämän lausekkeen kenttälaskuriin:
lpad(@row_number + 100, 5, '0')
Tämä tuottaa juoksevan numeroinnin 101:stä alkaen, joka on aina 5-numeroinen (esim. 00101
, 00102
, 00103
jne.).