Files
updsv7-rag/大阪府立病院機構_OPHO/entity/DJND4001_汎用マスタ_コード種別209_続柄区分.md
T
guanxiangwei 060b7bf1fa init
2026-08-27 11:27:47 +09:00

116 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# DJND4001 cde_sybt=209 続柄区分 × 性别(性別区分=047)分類
> 数据源:updsv7_opho_ci @ 192.168.1.72:5432
> 対象データ:大阪府立病院機構(OPHO = Osaka Prefectural Hospital Organization)
> 抽出日:2026-08-13
> 抽出条件:ccompkb='01' / cde_sybt='209' / CURRENT_DATE BETWEEN dstart AND dend
## 1. 辞書構成
- DJND4001 の `cde_sybt=209` = **親族続柄区分**(続柄コード値テーブル)
- DJND4001 の `cde_sybt=047` = **性別区分**(性別コード値テーブル、cde_val:1=男 / 2=女)
- DJND4002 の `cde_sybt=209` 定義:`nme4=性別`、`inp4='047'` → 209 の `dta4` フィールドは **047 の cde_val を参照** する形になっている
つまり 209 の各続柄コードの `dta4` には `1`(男) / `2`(女) / NULL(不分) のいずれかが入る。
## 2. 性别=男(`dta4='1'`)— 9 件
```
cde_val name dname
─────────────────────
04 父 父
06 兄 兄
07 弟 弟
10 祖父 祖父
13 長男 長男
14 次男 次男
15 三男 三男
16 四男 四男
17 五男 五男
```
## 3. 性别=女(`dta4='2'`)— 9 件
```
cde_val name dname
─────────────────────
05 母 母
08 姉 姉
09 妹 妹
11 祖母 祖母
18 長女 長女
19 次女 次女
20 三女 三女
21 四女 四女
22 五女 五女
```
## 4. 性别未設定(`dta4 IS NULL`)— 5 件
```
cde_val name dname
─────────────────────
01 本人 本人
02 配偶者 配偶者
03 子 子
12 孫 孫
23 その他 その他
```
意味:
- `01 本人` — 続柄角色が本人のため、性別項目は中立(本人自身の性别を見る)
- `02 配偶者` — 配偶者の性別は個別具体(男/女 両用可)、角色には含めない
- `03 子` — 子が男/女どちらでもあり得るため、長男/次男/.../長女/次女/... で個別表現
- `12 孫` — 上記と同じ(孫も男女両用)
- `23 その他` — 兜底
## 5. 集計
| 区分 | 件数 |
| -------------- | ---- |
| 男(dta4='1') | 9 |
| 女(dta4='2') | 9 |
| 不分(NULL) | 5 |
| **合計** | **23** |
## 6. 関連 SQL
### 6.1 一発で全件(男/女/不分)を分類
```sql
SELECT
CASE
WHEN dta4 = '1' THEN '1_男'
WHEN dta4 = '2' THEN '2_女'
ELSE '3_不分'
END AS sex_group,
cde_val, name, dname
FROM djnd4001
WHERE ccompkb = '01'
AND cde_sybt = '209'
AND CURRENT_DATE BETWEEN dstart AND dend
ORDER BY sex_group, cde_val;
```
### 6.2 性别=女のみ抽出(本資料 §3)
```sql
SELECT cde_val, name, dname
FROM djnd4001
WHERE ccompkb = '01'
AND cde_sybt = '209'
AND dta4 = '2'
AND CURRENT_DATE BETWEEN dstart AND dend
ORDER BY cde_val;
```
### 6.3 4002 側の関連定義を確認
```sql
-- 209 の inp4 が本当に '047'(性別区分)を参照しているか
SELECT nme4, inp4
FROM djnd4002
WHERE ccompkb = '01' AND cde_sybt = '209'
AND CURRENT_DATE BETWEEN dstart AND dend;
-- → nme4='性別', inp4='047'
```