Farkında olduğum tek yol bir tür 'kullanım başına çamur'.
Örneğin bir dizi özellik numarası (öznitelik adı propnum_array
, dtype varchar[]
) içeren veri var ve bazen dizinin boş olduğu herhangi bir veri tanımlamak istiyorum.
İçin test propnum_array = {}
veya propnum_array is null
veya propnum[0]=''
bununla Yapabileceğim (veya tema bu tür herhangi bir diğer varyasyonları) QGIS gag yapar regexp_match( propnum_array,'\\d')
veya propnum_array ilike '{""}'
veya propnum_array = '{""}'
ve bölme boş olmayan şeylere bakalım veri propnum_array
değil sahiptir ve malzeme.
Bunun anlamı, dizilerin yapısı varsa (örneğin, dizideki belirli öğelerde belirli değerler), bunları tarayabilirsiniz: 3 öğeli bir dizideki ikinci öğenin 'Y' olduğu tüm değerleri istiyorsanız, gibi bir şey isteyeceksiniz regexp_match( propnum_array,'[,]*\'Y\'\[,]*')
(virgül ve tek tırnaklardan eşleme dizesinden kaçmanız gerektiğinden emin olabilirsiniz, ancak başka birinin endişe etmesi için bir kullanım örneği).
Gerçek şu ki propnum_array ilike '{""}'
işler, onlar metin sanki o QGIS davranır diziler işaret gibi görünüyor. Alternatif olarak, gerektiğinde bunları anında metne dökebilir - ancak dizi türlerinin belgelenmemesi mantıklı olmaz (AFAIK). Dizi işlemeyle ilgili herhangi bir doküman bulamadım ve osgeo-qgis posta listesinde Ocak 2015'e kadar soru var.
Her ne kadar 'Data Driven Input Mask' eklentisinin v1.0.0'dan (Şubat 2015) beri dizi işleme sahip olduğunu anlasam da , büyük ipucu ifadeler düzenleyicide dizi işlevi bulunmamasıdır .