2 402
edições
(reusando Peter) |
m (→Ver também) |
||
(10 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
Tabelas da base corrente <code>DL05s_main</code>. Documentação gerada por recursos do "psql" e [https://tableconvert.com/markdown-to-mediawiki tableconvert.com/markdown-to-mediawiki]. | Tabelas da base corrente <code>DL05s_main</code>. Documentação gerada por recursos do "psql" e [https://tableconvert.com/markdown-to-mediawiki tableconvert.com/markdown-to-mediawiki] (ou [https://www.vertopal.com/en/convert/markdown-to-wiki-mediawiki vertopal.com/en/convert/markdown-to-wiki-mediawiki]). | ||
Ver também [[Usuário:Peter/Modelos endereço]] | Ver também [[Usuário:Peter/Modelos endereço]] | ||
Linha 79: | Linha 79: | ||
from doc_UDF_using_a_table('optim.jurisdiction') t order by 1,2,3 | from doc_UDF_using_a_table('optim.jurisdiction') t order by 1,2,3 | ||
; | ; | ||
... | -- R1a. Intervalos de CEP das cidades do Brasil | ||
create view optim.vw_jurisdiction76_postal_ranges AS | |||
select isolabel_ext, jurisd_local_id, osm_id, admin_level, name, | |||
('{'|| translate(info->>'postalCode_ranges', '[] ','{},') ||'}')::text[] as postal_ranges, | |||
('{'|| translate(regexp_replace(info->>'postalCode_ranges','\-\d+','','g'), '[] ','{},') ||'}')::int[] as cep5, | |||
(info->'area_km2')::int area_km2 | |||
from optim.jurisdiction | |||
where jurisd_base_id=76 | |||
order by 1 | |||
; | |||
-- R1b | |||
select * from optim.vw_jurisdiction76_postal_ranges where cardinality(postal_ranges)>2; | |||
-- apenas BR-SP-SaoPaulo, BR-DF-Brasilia e BR-RJ-NovaIguacu | |||
-- R1c | |||
select *, round(area_km2::float/cep5s::float,1) as area_per_cep | |||
from ( | |||
select isolabel_ext, jurisd_local_id, osm_id, admin_level, name, cardinality(postal_ranges) as num_ceps, cep5, | |||
1 + (cep5[1][2] - cep5[1][1]) + case when cardinality(cep5)>2 then (cep5[2][2] - cep5[2][1]) else 0 end as cep5s, | |||
area_km2 | |||
from optim.vw_jurisdiction76_postal_ranges | |||
) t order by 10 desc, 1 | |||
; -- MEDIANA 71 km2, select PERCENTILE_CONT(0.5) WITHIN GROUP(ORDER BY area_per_cep) FROM (...) t2. | |||
-- R2 | |||
SELECT substring(isolabel_ext,1,2) as pais, isolevel, lengtbit_MSB(jurisd_local_id) as bits, | |||
count(*) n | |||
FROM optim.jurisdiction where jurisd_local_id>0 | |||
GROUP by 1,2,3 order by 1, 4 desc | |||
; -- Chile (CL) cabe em 27 bits, Brasil (BR) não cabe. Poucos casos valem adaptar exceções. | |||
-- R3 | |||
SELECT '['||isolabel_ext||'](https://afa.codes/'||isolabel_ext||')' as AFAcode_map, | |||
name, | |||
jurisd_local_id as local_id, | |||
'['||osm_id||'](https://osm.org/relation/'||osm_id::text||')' as osm_id, | |||
'['||wikidata_id::text||'](https://wikidata.org/entity/Q'||wikidata_id::text||')' as wikidata_id | |||
FROM optim.jurisdiction | |||
ORDER BY jurisd_local_id, isolabel_ext; | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Linha 96: | Linha 134: | ||
* osmc.jurisdictions_select: JSON para interface de seletor de jurisdição. | * osmc.jurisdictions_select: JSON para interface de seletor de jurisdição. | ||
* public.qwerty: (resgatar para optim) gerador de comando bash "curl" para criar CSVs de todas as jurisdições. | * public.qwerty: (resgatar para optim) gerador de comando bash "curl" para criar CSVs de todas as jurisdições. | ||
'''R0a-packs''': select isolabel_ext, legalname as donor_name,shortname, housenumber_system_type as hn_sys, pack_number,license_data->'family' as lic_fam, jsonb_object_keys_asarray(make_conf_tpl->'layers') as layers from optim.vw01full_donated_packtpl where shortname!='OSM' order by packtpl_id | |||
'''R0b'''. Funções que fazem uso da tabela: | '''R0b'''. Funções que fazem uso da tabela: | ||
Linha 120: | Linha 160: | ||
|- | |- | ||
| osmc || l0cover_upsert_co || {NULL} || text | | osmc || l0cover_upsert_co || {NULL} || text | ||
|} | |||
'''R1c'''. Avalia área por cep, para inferir quantos dígitos mais o CEP5 precisaria para chegar a 1m2 com AFAcode | |||
{| class="wikitable" | |||
! isolabel_ext !! ibge_id !! name !! cep5 !! cep5s !! area_km2 !! area_per_cep | |||
|- | |||
| BR-PA-SaoFelixXingu || 1507300 || São Félix do Xingu || {68380,68382} || 3 || 84193 || 28064.3 | |||
|- | |||
| BR-PA-NovoProgresso || 1505031 || Novo Progresso || {68193,68194} || 2 || 38166 || 19083.0 | |||
|- | |||
| BR-PA-Jacareacanga || 1503754 || Jacareacanga || {68195,68197} || 3 || 53312 || 17770.7 | |||
|- | |||
| BR-AM-Tapaua || 1304104 || Tapauá || {69480,69484} || 5 || 85499 || 17099.8 | |||
|- | |||
| BR-RR-Rorainopolis || 1400472 || Rorainópolis || {69373,69374} || 2 || 33548 || 16774.0 | |||
|- | |||
| BR-PA-Altamira || 1500602 || Altamira || {68370,68379} || 10 || 159525 || 15952.5 | |||
|- | |||
| BR-RR-Amajari || 1400027 || Amajari || {69343,69344} || 2 || 28401 || 14200.5 | |||
|- | |||
| BR-AM-Japura || 1302108 || Japurá || {69495,69499} || 5 || 55776 || 11155.2 | |||
|- | |||
| BR-PA-Oriximina || 1505304 || Oriximiná || {68270,68279} || 10 || 107680 || 10768.0 | |||
|- | |||
| BR-MT-Colniza || 5103254 || Colniza || {78335,78337} || 3 || 27929 || 9309.7 | |||
|- | |||
| BR-MT-Querencia || 5107065 || Querência || {78643,78644} || 2 || 17808 || 8904.0 | |||
|- | |||
| ... || || || || || || | |||
|- | |||
| BR-PR-Anahy || 4101051 || Anahy || {85425,85429} || 5 || 103 || 20.6 | |||
|- | |||
| BR-PR-ParaisoNorte || 4118006 || Paraíso do Norte || {87780,87789} || 10 || 206 || 20.6 | |||
|- | |||
| BR-RS-NovaBrescia || 4313003 || Nova Bréscia || {95950,95954} || 5 || 103 || 20.6 | |||
|- | |||
| BR-RS-NovaPadua || 4313086 || Nova Pádua || {95275,95279} || 5 || 103 || 20.6 | |||
|- | |||
| BR-SP-Moncoes || 3531001 || Monções || {15275,15279} || 5 || 103 || 20.6 | |||
|- | |||
| ... || || || || || || | |||
|- | |||
| BR-PA-Marituba || 1504422 || Marituba || {67200,67999} || 800 || 102 || 0.13 | |||
|- | |||
| BR-PE-Olinda || 2609600 || Olinda || {53000,53399} || 400 || 41 || 0.10 | |||
|- | |||
| BR-PE-Recife || 2611606 || Recife || {50000,52999} || 3000 || 219 || 0.07 | |||
|} | |||
'''R2'''. Número de bits necessários para representar jurisd_local_id. Critério para avaliar se cria artificial ou reusa no novo id. Amostrando apenas Brasil (IBGE). Reparar que somando 8 bits do país não caberia em 27. No caso do Chile caberia (15+8<27). Em função desta análise decidimos criar o ID com ROW | |||
{| class="wikitable" | |||
! país !! isolevel !! bits !! n_count | |||
|- | |||
| BR || 3 || 22 || 3861 | |||
|- | |||
| BR || 3 || 23 || 1259 | |||
|- | |||
| BR || 3 || 21 || 450 | |||
|- | |||
| BR || 2 || 5 || 12 | |||
|- | |||
| BR || 2 || 6 || 10 | |||
|- | |||
| BR || 2 || 4 || 5 | |||
|- | |||
| BR || 1 || 0 || 1 | |||
|- | |||
| ... | |||
|- | |||
| CL || 3 || 15 || 164 | |||
|- | |||
| CL || 3 || 14 || 82 | |||
|- | |||
| CL || 3 || 13 || 41 | |||
|- | |||
| ... | |||
|- | |||
| CL || 2 || 1 || 1 | |||
|- | |||
| CL || 1 || 0 || 1 | |||
|} | |||
<span id="optim.jurisdiction.R3"></span>'''R3'''. Listagem simples Markdown para relatórios internos e conferir se IDs batem com links. | |||
{| class="wikitable" | |||
!width="38%"| afacode_map | |||
!width="14%"| name | |||
!width="4%"| local_id | |||
!width="19%"| osm_id | |||
!width="22%"| wikidata_id | |||
|- | |||
| [https://afa.codes/BR BR] | |||
| Brasil | |||
| 0 | |||
| [https://osm.org/relation/59470 59470] | |||
| [https://wikidata.org/entity/Q155 155] | |||
|- | |||
| [https://afa.codes/BR-RO BR-RO] | |||
| Rondônia | |||
| 11 | |||
| [https://osm.org/relation/325866 325866] | |||
| [https://wikidata.org/entity/Q43235 43235] | |||
|- | |||
| [https://afa.codes/BR-RO-AltaFlorestaOeste BR-RO-AltaFlorestaOeste] | |||
| Alta Floresta D’Oeste | |||
| 1100015 | |||
| [https://osm.org/relation/325842 325842] | |||
| [https://wikidata.org/entity/Q1761456 1761456] | |||
|- | |||
| [https://afa.codes/BR-RO-Ariquemes BR-RO-Ariquemes] | |||
| Ariquemes | |||
| 1100023 | |||
| [https://osm.org/relation/325888 325888] | |||
| [https://wikidata.org/entity/Q1646975 1646975] | |||
|- | |||
| [https://afa.codes/BR-RO-Cabixi BR-RO-Cabixi] | |||
| Cabixi | |||
| 1100031 | |||
| [https://osm.org/relation/325882 325882] | |||
| [https://wikidata.org/entity/Q940433 940433] | |||
|- | |||
| [https://afa.codes/BR-RO-Cacoal BR-RO-Cacoal] | |||
| Cacoal | |||
| 1100049 | |||
| [https://osm.org/relation/325872 325872] | |||
| [https://wikidata.org/entity/Q1761637 1761637] | |||
|- | |||
|...||...||...||...||... | |||
|- | |||
| [https://afa.codes/BR-AC BR-AC] | |||
| Acre | |||
| 12 | |||
| [https://osm.org/relation/326266 326266] | |||
| [https://wikidata.org/entity/Q40780 40780] | |||
|- | |||
| [https://afa.codes/BR-AC-Acrelandia BR-AC-Acrelandia] | |||
| Acrelândia | |||
| 1200013 | |||
| [https://osm.org/relation/326273 326273] | |||
| [https://wikidata.org/entity/Q953086 953086] | |||
|- | |||
| [https://afa.codes/BR-AC-AssisBrasil BR-AC-AssisBrasil] | |||
| Assis Brasil | |||
| 1200054 | |||
| [https://osm.org/relation/326269 326269] | |||
| [https://wikidata.org/entity/Q1754403 1754403] | |||
|- | |||
| [https://afa.codes/BR-AC-Brasileia BR-AC-Brasileia] | |||
| Brasiléia | |||
| 1200104 | |||
| [https://osm.org/relation/326270 326270] | |||
| [https://wikidata.org/entity/Q899406 899406] | |||
|- | |||
| [https://afa.codes/BR-AC-Bujari BR-AC-Bujari] | |||
| Bujari | |||
| 1200138 | |||
| [https://osm.org/relation/326259 326259] | |||
| [https://wikidata.org/entity/Q1754408 1754408] | |||
|- | |||
| [https://afa.codes/BR-AC-Capixaba BR-AC-Capixaba] | |||
| Capixaba | |||
| 1200179 | |||
| [https://osm.org/relation/326268 326268] | |||
| [https://wikidata.org/entity/Q1800737 1800737] | |||
|- | |||
| [https://afa.codes/BR-AC-CruzeiroSul BR-AC-CruzeiroSul] | |||
| Cruzeiro do Sul | |||
| 1200203 | |||
| [https://osm.org/relation/326274 326274] | |||
| [https://wikidata.org/entity/Q941136 941136] | |||
|} | |} | ||
Linha 518: | Linha 730: | ||
$f$ LANGUAGE SQL IMMUTABLE; | $f$ LANGUAGE SQL IMMUTABLE; | ||
</pre> | </pre> | ||
------ | |||
== Ver também == | |||
* Criação ou Reconstrução de qualquer DL (teste ou produção) https://github.com/digital-guard/preserv/wiki/Datalake |
edições