我有三个表SQL查询的三个表
表1 color_sets_info
与set_id
(PK),set_name
列
表2 colors
与set_id
(FK),color_id
(PK),color_name
,color_formula
列
表3. mixed_colors
与color_id1
(FK),color_id2
(FK),color_formula
列
外键colors.set_id
引用color_sets_info.set_id
外键mixed_colors.color_id1
引用colors.color_id
外键mixed_colors.color_id2
引用colors.color_id
如何从mixed_colors具体set_name
或color_formula
和所有相关的列得到:
colors.color_name
(为mixed_colors.color_id1
),
colors.color_name
(为mixed_colors.color_id2
),
color_sets_info.set_name
(为第一colors.color_name
),
color_sets_info.set_name
(对于第二个colors.color_name
)
mixed_colors.color_formula
?
例如:
color_sets_info colors
+--------+-----------+ +--------+----------+------------+---------------+
| set_id | set_name | | set_id | color_id | color_name | color_formula |
+--------+-----------+ +--------+----------+------------+---------------+
| 1 | somename1 | | 1 | 1 | black | R0G0B0 |
| 2 | somename2 | | 1 | 2 | yellow | R255G255B0 |
| 3 | somename3 | | 2 | 3 | green | R0G255B255 |
+--------+-----------+ | 3 | 4 | red | R255G0B0 |
+--------+----------+------------+---------------+
mixed_colors
+-----------+-----------+---------------+
| color_id1 | color_id2 | color_formula |
+-----------+-----------+---------------+
| 1 | 4 | R127G0B0 |
| 2 | 3 | R127G255B127 |
| 3 | 1 | R0G127B127 |
+-----------+-----------+---------------+
我需要从mixed_colorscolor_formula
和两个set_names
和两个color_names
每个混合色,其中1)仅使用somename1和somename2颜色组以获得2)R127G0B0公式
哪些是你使用,MySQL或SQLServer数据库?你已经尝试过哪些SQL? – talegna
抱歉,sqlite ...... – Pylyp
我知道如何为儿童构建SQL,例如'SELECT color_sets_info.set_name,color_name,color_formula FROM colors JOIN color_sets_info ON colors.set_id = color_sets_info.set_id',但被子clidrens卡住,特别是在** mixed_colors **中有两个'color_id' ** – Pylyp