sql一张表中两个字段指向同一个外键
2017-10-20 18:33
525 查看
在项目开发中遇到这么一个例子,首先产品表
tb_product
-----------------------------
id name
1 手机
2 电脑
3 笔记本
第二张表
tb_product_chain(产品链)
------------------------------------------------------
int product_id parent_product_id
1 1 2
2 1 3
需要新建一个查询,即把表2中的product_id和parent_product_id替换为产品的name
我们可以这么操作
select a.id,b.name,c.name
from tb_product_chain a
inner join tb_product b on a.product_id=b.id
inner join tb_product c on a.parent_product_join=c.id
发现结果是
1 手机 电脑
2 手机 笔记本
达到了预期效果。
一下是我的项目中的实际操作数据
tb_product_chain
tb_product
v_product_chain
tb_product
-----------------------------
id name
1 手机
2 电脑
3 笔记本
第二张表
tb_product_chain(产品链)
------------------------------------------------------
int product_id parent_product_id
1 1 2
2 1 3
需要新建一个查询,即把表2中的product_id和parent_product_id替换为产品的name
我们可以这么操作
select a.id,b.name,c.name
from tb_product_chain a
inner join tb_product b on a.product_id=b.id
inner join tb_product c on a.parent_product_join=c.id
发现结果是
1 手机 电脑
2 手机 笔记本
达到了预期效果。
一下是我的项目中的实际操作数据
tb_product_chain
tb_product
v_product_chain
相关文章推荐
- sql一张表中两个字段指向同一个外键
- SQL--当一张表的两个外键指向同一主键
- 一个表的两个字段具有相同的类型。如何仅用SQL语句交换这两列的数据?
- SQL——两个表之间的更新:用一个表的字段更新另一个表的字段
- sql中,将同一个表中两个类型一样的字段的值互换 以及 将同一个表中的一个字段的值复制给另一个字段
- sql语句:同一张表两个相同外键查询
- 如果在一个SQL语句中有两个来自不同表的字段,有相同的字段名怎么办?
- SQL拆分字段,一个拆成两个
- SQL 一个表中的两个外键来自于同一个表创建的视图
- [ztjSQL]一个TextBox查询出一个表的两个字段
- mysql把一个表某个字段的内容复制到另一张表的某个字段的SQL语句写法
- 给同一个表中的两个外键写sql
- 一个SQL对两个字段排序
- 利用sqlite创建一个数据user,其含有一张表person,该person表中含有三个列,其中第一字段为主键int类型的,其他两个字段自定义数据类型和名称。
- sql语句——不同的表根据相同的字段值将两个表指定的字段合并为一个表
- mysql把一个表某个字段的内容复制到另一张表的某个字段的SQL语句写法
- mysql把一个表某个字段的内容复制到另一张表的某个字段的SQL语句写法
- mysql把一个表某个字段的内容复制到另一张表的某个字段的SQL语句写法
- sql查询一张表中两个字段重复的数据并得到其主键
- 一个表有两个外键指向另一个表的主键:如何区分显示