PrepperPrepper Open Data Bank

住民基本台帳【CI_BRR20】

概要

このデータセットは、全統計調査の統計量テーブル【CI_ST】から「住民基本台帳(2020年~)」項目データを抜き出し、市区町村統計量マスタ【CI_ST_MST】及び市区町村調査マスタ【CI_TB_MST】と市区町村マスタテーブル【CI_MST】を組み合わせたビューです。

SQL

E_CI_BRR20

  1. create or replace secure view PODB_CITY.BETA.E_CI_BRR20(
  2.                ESTATDB_STATS_FULL_ID COMMENT ‘ESTATDB_統計量コード|truestarが付与|『テーブルID』『表01コード』『全カテゴリコード』を結合して独自作成’,
  3.                CITY_CODE COMMENT ‘市区町村コード | 出典:e-Stat | 元データのカラム名はarea_code’,
  4.                STATS_YEAR COMMENT ‘調査年度| 出典:e-Stat| 元データのカラム名は時間軸(年次)’,
  5.                STATS_VALUE COMMENT ‘統計値 | 出典:e-Stat | 元データのカラム名はvalue’,
  6.                STATS_UNIT COMMENT ‘統計単位 | 出典:e-Stat | 元データのカラム名はunit’,
  7.                ESTATDB_STATS_FULL_NAME COMMENT ‘ESTATDB_統計量名|truestarが付与|『表01名』『全カテゴリ名』を結合して独自作成’,
  8.                ESTATDB_RESEARCH_TABLE_ID COMMENT ‘ESTATDB_調査テーブルID|truestarが付与|『調査ID』『テーブルID』を結合して独自作成(関数)’,
  9.                STATS_TAB01_CODE COMMENT ‘統計量_属性_表01コード| 出典:e-Stat|元データのカラム名はtab_code’,
  10.                STATS_TAB01_NAME COMMENT ‘統計量_属性_表01名| 出典:e-Stat|元データのカラム名は表章項目’,
  11.                STATS_CAT01_CODE COMMENT ‘統計量_属性_カテゴリ01コード| 出典:e-Stat|元データのカラム名はcat01_code’,
  12.                STATS_CAT01_NAME COMMENT ‘統計量_属性_カテゴリ01名| 出典:e-Stat’,
  13.                STATS_CAT02_CODE COMMENT ‘統計量_属性_カテゴリ02コード| 出典:e-Stat|元データのカラム名はcat02_code’,
  14.                STATS_CAT02_NAME COMMENT ‘統計量_属性_カテゴリ02名| 出典:e-Stat’,
  15.                STATS_CAT03_CODE COMMENT ‘統計量_属性_カテゴリ03コード| 出典:e-Stat|元データのカラム名はcat03_code’,
  16.                STATS_CAT03_NAME COMMENT ‘統計量_属性_カテゴリ03名| 出典:e-Stat’,
  17.                ESTATDB_TABLE_NAME COMMENT ‘ESTATDB_テーブル名|『表番号』『表題』『統計表名』を結合して独自作成(関数)’,
  18.                CITY_NAME COMMENT ‘市区町村名|出典:e-Stat|元データのカラム名は地域,移動後の居住地’
  19. ) COMMENT=’住民基本台帳 | 2020年’
  20.  as select aa.*, research_master.ESTATDB_TABLE_NAME,city_master.CITY_NAME
  21. from
  22. (
  23.     //条件を絞ったresearch_statsからすべて、stats_masterから使うデータを選択をする
  24.     select research_stats.*,
  25.            stats_master.//ESTATDB_STATS_FULL_ID,
  26.                         ESTATDB_STATS_FULL_NAME,
  27.                         ESTATDB_RESEARCH_TABLE_ID,
  28.                         STATS_TAB01_CODE,
  29.                         STATS_TAB01_NAME,
  30.                         STATS_CAT01_CODE,
  31.                         STATS_CAT01_NAME,
  32.                         STATS_CAT02_CODE,
  33.                         STATS_CAT02_NAME,
  34.                         STATS_CAT03_CODE,
  35.                         STATS_CAT03_NAME
  36.     
  37.     from
  38.     ( //(PODB_RESEARCH_TABLE_ID, 7) = ‘0312020’であるデータをPODB_CITY.BETA.CI_STからすべてを選択し、それをresearch_statsとする。
  39.         select * from PODB_CITY.BETA.CI_ST
  40.         where left(ESTATDB_STATS_FULL_ID, 7) = ‘0312020’
  41.     ) as research_stats
  42.         //research_statsとstats_masterをESTATDB_STATS_FULL_IDでleft join。このときのPODB_CITY.BETA.CI_ST_MSTはstats_masterにとしている。
  43.         //left joinの条件はresearch_stats.ESTATDB_STATS_FULL_ID =stats_master.ESTATDB_STATS_FULL_IDである。
  44.         //ここでのprimary keyはESTATDB_STATS_FULL_IDである。
  45.         //結合のprimary keyはmiroを参考にすること。
  46.     left join
  47.     PODB_CITY.BETA.CI_ST_MST as stats_master
  48.     on research_stats.ESTATDB_STATS_FULL_ID =stats_master.ESTATDB_STATS_FULL_ID
  49. //research_statsとstats_masterを条件で結合したものをaaとする。aaの部分は任意の名前で良い
  50. ) as aa
  51. //aaとresearch_masterをESTATDB_RESEARCH_TABLE_IDでleft joinする。このときPODB_CITY.BETA.CI_TB_MSTをresearch_masterとしている
  52. //left joinの条件はaa.ESTATDB_RESEARCH_TABLE_ID = research_master.ESTATDB_RESEARCH_TABLE_ID。
  53. //ここでのprimary keyはESTATDB_RESEARCH_TABLE_IDである。
  54. //結合のprimary keyはmiroを参考にすること。
  55. left join PODB_CITY.BETA.CI_TB_MST as research_master
  56. on aa.ESTATDB_RESEARCH_TABLE_ID = research_master.ESTATDB_RESEARCH_TABLE_ID
  57. //aa.CITY側のみのデータを必要とする
  58. //citymaster.CITY_CODEとaa.CITY_CODEをright joinする。
  59. //PODB_CITY.BETA.CI_MSTをcity_masterとしている。
  60. inner join PODB_CITY.BETA.CI_MST as city_master
  61. on city_master.CITY_CODE = aa.CITY_CODE
  62. //市区町村の統計量のみを確実に表示するために使用
  63. where NOT CITY_NAME=’null’;

J_CI_BRR20

  1. create or replace secure view PODB_CITY.BETA.J_CI_BRR20(
  2.                “ESTATDB_統計量コード” COMMENT ‘truestarが付与|『テーブルID』『表01コード』『全カテゴリコード』を結合して独自作成’,
  3.                “市区町村コード” COMMENT ‘出典:e-Stat | 元データのカラム名はarea_code’,
  4.                “調査年度” COMMENT ‘出典:e-Stat| 元データのカラム名は時間軸(年次)’,
  5.                “統計値” COMMENT ‘出典:e-Stat|元データのカラム名はvalue’,
  6.                “統計単位” COMMENT ‘出典:e-Stat|元データのカラム名はunit’,
  7.                “ESTATDB_統計量名” COMMENT ‘truestarが付与|『表01名』『全カテゴリ名』を結合して独自作成’,
  8.                “ESTATDB_調査テーブルID” COMMENT ‘truestarが付与|『調査ID』『テーブルID』を結合して独自作成(関数)’,
  9.                “統計量_属性_表01コード” COMMENT ‘出典:e-Stat|元データのカラム名はtab_code’,
  10.                “統計量_属性_表01名” COMMENT ‘出典:e-Stat|元データのカラム名は表章項目’,
  11.                “統計量_属性_カテゴリ01コード” COMMENT ‘出典:e-Stat|元データのカラム名はcat01_code’,
  12.                “統計量_属性_カテゴリ01名” COMMENT ‘出典:e-Stat’,
  13.                “統計量_属性_カテゴリ02コード” COMMENT ‘出典:e-Stat|元データのカラム名はcat02_code’,
  14.                “統計量_属性_カテゴリ02名” COMMENT ‘出典:e-Stat’,
  15.                “統計量_属性_カテゴリ03コード” COMMENT ‘出典:e-Stat|元データのカラム名はcat03_code’,
  16.                “統計量_属性_カテゴリ03名” COMMENT ‘出典:e-Stat’,
  17.                “ESTATDB_テーブル名” COMMENT ‘truestarが付与|『表番号』『表題』『統計表名』を結合して独自作成(関数)’,
  18.                “市区町村” COMMENT ‘出典:e-Stat|元データのカラム名は地域、移動後の住所地’
  19. ) COMMENT=’住民基本台帳 | 2020年’
  20.  as select aa.*, research_master.ESTATDB_TABLE_NAME,city_master.CITY_NAME
  21. from
  22. (
  23.     //条件を絞ったresearch_statsからすべて、stats_masterから使うデータを選択をする
  24.     select research_stats.*,
  25.            stats_master.//ESTATDB_STATS_FULL_ID,
  26.                         ESTATDB_STATS_FULL_NAME,
  27.                         ESTATDB_RESEARCH_TABLE_ID,
  28.                         STATS_TAB01_CODE,
  29.                         STATS_TAB01_NAME,
  30.                         STATS_CAT01_CODE,
  31.                         STATS_CAT01_NAME,
  32.                         STATS_CAT02_CODE,
  33.                         STATS_CAT02_NAME,
  34.                         STATS_CAT03_CODE,
  35.                         STATS_CAT03_NAME
  36.     
  37.        
  38.     from
  39.     ( //(PODB_RESEARCH_TABLE_ID, 7) = ‘0312020’であるデータをPODB_CITY_DATA.BETA.CI_STからすべてを選択し、それをresearch_statsとする。
  40.         select * from PODB_CITY.BETA.CI_ST
  41.         where left(ESTATDB_STATS_FULL_ID, 7) = ‘0312020’
  42.     ) as research_stats
  43.         //research_statsとstats_masterをESTATDB_STATS_FULL_IDでleft join。このときのPODB_CITY_DATA.DEV.CI_ST_MSTはstats_masterにとしている。
  44.         //left joinの条件はresearch_stats.ESTATDB_STATS_FULL_ID =stats_master.ESTATDB_STATS_FULL_IDである。
  45.         //ここでのprimary keyはESTATDB_STATS_FULL_IDである。
  46.         //結合のprimary keyはmiroを参考にすること。
  47.     left join
  48.     PODB_CITY.BETA.CI_ST_MST as stats_master
  49.     on research_stats.ESTATDB_STATS_FULL_ID =stats_master.ESTATDB_STATS_FULL_ID
  50. //research_statsとstats_masterを条件で結合したものをaaとする。aaの部分は任意の名前で良い
  51. ) as aa
  52. //aaとresearch_masterをESTATDB_RESEARCH_TABLE_IDでleft joinする。このときPODB_CITY_DATA.BETA.CI_TB_MSTをresearch_masterとしている
  53. //left joinの条件はaa.ESTATDB_RESEARCH_TABLE_ID = research_master.ESTATDB_RESEARCH_TABLE_ID。
  54. //ここでのprimary keyはESTATDB_RESEARCH_TABLE_IDである。
  55. //結合のprimary keyはmiroを参考にすること。
  56. left join PODB_CITY.BETA.CI_TB_MST as research_master
  57. on aa.ESTATDB_RESEARCH_TABLE_ID = research_master.ESTATDB_RESEARCH_TABLE_ID
  58. //aa.CITY側のみのデータを必要とする
  59. //citymaster.CITY_CODEとaa.CITY_CODEをright joinする。
  60. //PODB_CITY_DATA.BETA.CI_MSTをcity_masterとしている。
  61. inner join PODB_CITY.BETA.CI_MST as city_master
  62. on city_master.CITY_CODE = aa.CITY_CODE
  63. where NOT CITY_NAME=’null’;

サンプルデータ

データフィールド

ESTATDB_STATS_FULL_ID

ESTATDB_統計量コード

CITY_CODE

市区町村コード

STATS_YEAR

調査年度

STATS_VALUE

統計値

STATS_UNIT

統計単位

ESTATDB_STATS_FULL_NAME

ESTATDB_統計量名

ESTATDB_RESEARCH_TABLE_ID

ESTATDB_調査テーブルID

STATS_TAB01_CODE

統計量_属性_表01コード

STATS_TAB01_NAME

統計量_属性_表01名

STATS_CAT01_CODE

統計量_属性_カテゴリ01コード

STATS_CAT01_NAME

統計量_属性_カテゴリ01名

STATS_CAT02_CODE

統計量_属性_カテゴリ02コード

STATS_CAT02_NAME

統計量_属性_カテゴリ02名

STATS_CAT03_CODE

統計量_属性_カテゴリ03コード

STATS_CAT03_NAME

統計量_属性_カテゴリ03名

ESTATDB_TABLE_NAME

ESTATDB_テーブル名

CITY_NAME

市区町村名

特記事項

事象: 

 ESTATDB_統計量名【ESTATDB_STATS_FULL_NAME】は同一であるが、統計量【STATS_VALUE】などが異なるレコードがあります。

異なる理由:

 ESTATDB_テーブル名【ESTATDB_TABLE_NAME】が異なるからです。

詳細:

  •  表番号3-3と表番号4-3-1の例です。
ESTATDB_STATS_FULL_IDESTATDB_STATS_FULL_NAMESTATS_VALUECITY_NAMEESTATDB_TABLE_NAME
0112020009|202001|0|0|00|0人口|国籍総数|総数|総数|総数1,973,395札幌市3-3男女,年齢(5歳階級),出生の月,国籍総数か日本人別人口-全国,都道府県,市区町村
0112020010|202001|0|0|0|00人口|国籍総数|総数|総数|総数1,726,966札幌市4-3-1男女,年齢(5歳階級),配偶関係,国籍総数か日本人別人口(15歳以上)-全国,都道府県,市区町村

※こちらは、他のビューの事例ではありますが、本ビューでも事象は同じです。

事象例:

 ESTATDB_統計量名【ESTATDB_STATS_FULL_NAME】は同一であるにもかかわらず、統計量【STATS_VALUE】等が異なっています。

 統計量が異なっている理由は、表番号3-3は15歳未満も含めた人口総数であり、表番号4-3-1は15歳以上の人口総数であるためです。

注意:

 この場合、ESTATDB_統計量名【ESTATDB_STATS_FULL_NAME】のみを指定して統計値を出すと2テーブルの統計値の合計となってしまいます。

対処方法:

 ESTATDB_統計量名【ESTATDB_STATS_FULL_NAME】を指定して統計値を出す際には、

 ESTATDB_統計コード【ESTATDB_STATS_FULL_ID】やESTATDB_テーブル名【ESTATDB_TABLE_NAME】を併せて指定してください。