小编Geo*_*pts的帖子

一个查找表或许多查找表?

我需要使用性别,教育,专业,marital_status,height,residency_status等其他属性来保存基本成员的数据.

我有大约15-18个查找表都有(id,name,value),所有属性都有字符串值.

我应该tbl_members为每个上述属性创建成员表并分别15-18个查找表:

tbl_members:

mem_Id
mem_email
mem_password
Gender_Id
education_Id
profession_id
marital_status_Id
height_Id
residency_status_Id
Run Code Online (Sandbox Code Playgroud)

或者我应该只创建一个查找表tbl_Attributestbl_Attribute_Types

tbl_Attributes:

att_Id
att_Value
att_Type_Id
Run Code Online (Sandbox Code Playgroud)

示例数据:

001 - Male - 001
002 - Female - 001
003 - Graduate - 002
004 - Masters - 002
005 - Engineer - 003
006 - Designer - 003
Run Code Online (Sandbox Code Playgroud)

tbl_Attribute_Types:

att_type_Id
att_type_name
Run Code Online (Sandbox Code Playgroud)

示例数据:

001 - Gender
002 - Education
003 - Profession
Run Code Online (Sandbox Code Playgroud)

要填写查找下拉菜单,我可以选择以下内容:

SELECT A.att_id, A.att_value, AT.att_type_name
FROM tbl_Attributes A
INNER …
Run Code Online (Sandbox Code Playgroud)

sql database-design

3
推荐指数
1
解决办法
4478
查看次数

SQL查询错误

请检查SQL模式并查询SQL Fiddle

如果有人能解决问题,我会得到带有NULL值的重复记录.

问候

这就是我得到的:

| MEM_ID |      MEM_EMAIL | GENDER | EDUCATION |  PROFESSION |
|--------|----------------|--------|-----------|-------------|
|      1 |   it@email.com |   Male |    (null) |      (null) |
|      1 |   it@email.com | (null) |  Graduate |      (null) |
|      1 |   it@email.com | (null) |    (null) |    Engineer |
|      2 | info@email.com | Female |    (null) |      (null) |
|      2 | info@email.com | (null) |  Graduate |      (null) |
|      2 | info@email.com | (null) | …
Run Code Online (Sandbox Code Playgroud)

sql-server

1
推荐指数
1
解决办法
70
查看次数

标签 统计

database-design ×1

sql ×1

sql-server ×1