Thématique - Bâti

[typeloc] - Une typologie du local complète proposée par le Cerema

Description

La variable typeloc est un champ encodé sur 2 ou 6 caractères permettant d'obtenir un segment de locaux selon les typologies suivantes.

Pour les logements d'habitation

type_de_local taille anciennete mode_occupation statut_occupation copro
m maison p petit 1 avant 1949 p résidence principale o propriétaire occupant m non copropriété
a appartement m moyen 2 1949 - 1974 s résidence secondaire p locataire privé c copropriété
g grand 3 1975 - 1990 v vacant <= 2 ans s locataire social
4 1991 - 2005 w vacant > 2 a autre
5 2006 et plus m meublé z sans objet
z Non défini z non renseigné

Si typeloc='mp1pom', alors il s'agit d'une maison de petite taille construite avant 1949 en résidence principale avec un propriétaire occupant non en copropriété.

Pour les dépendances

type_de_local type_de_dependance
d dépendance a annexe
p parking
g agrément
t terrasse
p piscine

Si typeloc='dp', alors il s'agit d'une dépendance de type piscine.

Pour les locaux d'activité

type_de_local type_activite
e activité a ateliers et locaux de transformation
b bureaux
s établissements de soins et de santé
p dépôts et parcs de stationnement
e établissements d'enseignement
x locaux spéciaux
h hôtels, hébergements et campings
i établissements industriels
m magasins et commerces
l salles de spectacles et loisirs
Z aucun

Si typeloc='ee', alors il s'agit d'un local d'activité dédié aux établissements d'enseignement.

Fiabilité - Limite

Cette nouvelle variable est une agrégation des modalités de variables existantes. Sa fiabilité est donc dépendante des modalités de chaque variable la composant, notamment dteloc, rppo_rs, ccthp, jannath, ctpdl, typeact

Cette variable est disponible pour le millésime 2023 des fichiers fonciers, mais elle peut être recalculée pour les millésimes antérieurs jusqu'en 2018. À noter toutefois qu'il faut dans ce cas changer la variable rppo_rs en proba_rprs.

Construction

Requête SQL

WITH q1 AS(
SELECT
*,
-- calcul du mode_occupation en amont
CASE
WHEN (("dteloc" IN ('1', '2')) AND ((2023.0 - CAST(SUBSTR("loghvacdeb", 1, 4) AS NUMERIC)) <= 2.0)) THEN 'v'
WHEN (("dteloc" IN ('1', '2')) AND ((2023.0 - CAST(SUBSTR("loghvacdeb", 1, 4) AS NUMERIC)) > 2.0)) THEN 'w'
WHEN (("dteloc" IN ('1', '2')) AND ("rppo_rs" = 'RS')) THEN 's'
WHEN (("dteloc" IN ('1', '2')) AND ("ccthp" IN ('T', 'B'))) THEN 'm'
WHEN (("dteloc" IN ('1', '2')) AND ("ccthp" IN ('X', 'L', 'G', 'F') OR ("ccthp" = 'P' AND "rppo_rs" != 'RS'))) THEN 'p'
WHEN (("dteloc" IN ('1', '2')) AND (("ccthp" IS NULL))) THEN 'z'
WHEN (("dteloc" IN ('1', '2')) AND (TRUE)) THEN 'z'
END AS "mode_occupation"
FROM "ff_dXX_20XX"."dXX_20XX_pb0010_local"
)

SELECT
idlocal,
case
--habitation
WHEN ("dteloc" IN ('1', '2')) THEN (
CONCAT_WS('',
--type_local
CASE
WHEN ("dteloc" = '1') THEN 'm'
WHEN ("dteloc" = '2') THEN 'a' ELSE 'z'
END,

--taille
CASE
WHEN (("dteloc" = '2' AND "npiece_p2" <= 2.0)) THEN 'p'
WHEN (("dteloc" = '2' AND "npiece_p2" IN (3.0, 4.0))) THEN 'm'
WHEN (("dteloc" = '2' AND "npiece_p2" >= 5.0)) THEN 'g'
WHEN (("dteloc" = '1' AND "stoth" < 90.0)) THEN 'p'
WHEN (("dteloc" = '1' AND "stoth" >= 90.0 AND "stoth" < 130.0)) THEN 'm'
WHEN (("dteloc" = '1' AND "stoth" >= 130.0)) THEN 'g'
ELSE 'z'
END,

-- anciennete
CASE
WHEN ("jannath" < 1949.0) THEN '1'
WHEN (("jannath" >= 1949.0 AND "jannath" <= 1974.0)) THEN '2'
WHEN (("jannath" >= 1975.0 AND "jannath" <= 1990.0)) THEN '3'
WHEN (("jannath" >= 1991.0 AND "jannath" <= 2005.0)) THEN '4'
WHEN (("jannath" >= 2006.0)) THEN '5'
ELSE 'z'
END,

--mode_occupation
"mode_occupation",

--statut_occupation
CASE
WHEN (("mode_occupation" = 'p' AND "ccthp" = 'P' AND "proba_rprs" != 'RS')) THEN 'o'
WHEN (("mode_occupation" = 'p' AND "ccthp" = 'L' AND ("loghlls" IN ('OUI', 'OUI PROBABLE', 'NC') AND "catpro3" ~ 'F1a'))) THEN 's'
WHEN (("mode_occupation" = 'p' AND "ccthp" = 'L' AND NOT(("loghlls" IN ('OUI', 'OUI PROBABLE', 'NC') AND "catpro3" ~ 'F1a')))) THEN 'p'
WHEN (("mode_occupation" = 'p' AND "ccthp" IN ('G', 'X'))) THEN 'a'
WHEN (("mode_occupation" != 'p')) THEN 'z'
ELSE 'z'
END,

--copropriete
CASE
WHEN (("ctpdl" IN ('CL', 'CLV', 'CV'))) THEN 'c'
ELSE 'm'
END))

-- dependance
WHEN ("dteloc" = '3') THEN (
--type_local
CONCAT_WS('', 'd',
-- type_de_dependance
CASE
WHEN (("nbannexe" = '1')) THEN 'a'
WHEN (("nbgarpark" = '1')) THEN 'p'
WHEN (("nbagrement" = '1')) THEN 'g'
WHEN (("nbterrasse" = '1')) THEN 't'
WHEN (("nbpiscine" = '1')) THEN 'p'
ELSE 'z'
END))

-- activite
WHEN ("dteloc" = '4') THEN (
--type_local
CONCAT_WS('', 'e',
--type_activite
CASE
WHEN ("typeact" IN ('ATE1', 'ATE2', 'ATE3')) THEN 'a'
WHEN ("typeact" IN ('BUR1', 'BUR2', 'BUR3')) THEN 'b'
WHEN ("typeact" IN ('CLI1', 'CLI2', 'CLI3', 'CLI4')) THEN 's'
WHEN ("typeact" IN ('DEP1', 'DEP2', 'DEP3', 'DEP4', 'DEP5')) THEN 'p'
WHEN ("typeact" IN ('ENS1', 'ENS2')) THEN 'e'
WHEN ("typeact" IN ('EXC1')) THEN 'x'
WHEN ("typeact" IN ('HOT1', 'HOT2', 'HOT3', 'HOT4', 'HOT5', 'SPE4', 'SPE5')) THEN 'h'
WHEN ("typeact" IN ('IND1', 'IND2')) THEN 'i'
WHEN ("typeact" IN ('MAG1', 'MAG2', 'MAG3', 'MAG4', 'MAG5', 'MAG6', 'MAG7')) THEN 'm'
WHEN ("typeact" IN ('SPE1', 'SPE2', 'SPE3', 'SPE6', 'SPE7')) THEN 'l'
ELSE 'z'
END))

ELSE 'z'

END AS "typeloc"
FROM q1;

Exemples d'utilisation

Les locaux sociaux dans le parc ancien :

select *
from pb0010_local
where typeloc like '__1_s_';

Les grands appartements privés en résidence principale :

select *
from pb0010_local
where typeloc like 'ag_pp_';

Données de cadrage

Les 10 segments des logements d'habitation les plus fréquents :

typeloc n part
mp1pom 1 582 496 4.1%
mm3pom 1 520 359 3.9%
mm1pom 1 409 925 3.6%
mg1pom 1 153 452 3.0%
mp2pom 1 068 809 2.8%
am2psm 978 061 2.5%
mm5pom 957 046 2.5%
mm4pom 932 034 2.4%
mm2pom 918 205 2.4%
mp3pom 875 224 2.3%
Total 11 395 611 29.4%

Paramètres d’affichage

Choisissez un thème pour personnaliser l’apparence du site.