问答详情
源自:5-13 无限级分类表设计

子表连接父表,自身连接。ON s.parent_id = p.type.name


SELECT s.type_id,s.type_name,p.type_name FROM tdb_goods_types AS s LEFT JOIN tdb_goods_types AS p ON s.parent_id = p.type_id;

http://img.mukewang.com/58f8c3270001778706040491.jpg

s.parend_id这个字段哪里来的?为什么它连接p.type_id

表中的type.name就会显示汉字?type_id应该是数字啊。

ON s.parent_id = p.type_id;

提问者:萌新e 2017-04-20 22:21

个回答

  • 逆风落叶
    2017-04-21 14:45:49

    s.parent_id是tdb_goods_types表中三个列type_id , type_name , parent_id 中的parent_id.

    显示汉字是因为select语句查找显示的是type_name.

    你说的ON s.parent_id = p.type_id 是连接条件 而不是显示结果

  • 庭前闲月
    2017-04-20 23:43:01

    tdb_goods_types的记录

  • 庭前闲月
    2017-04-20 23:38:36

    s.parend_id这个字段来源于tdb_goods_types本身,至于为什么会显示汉字,是因为链接完成之后子表与父表已经存在实际的外键关系,与物理外键相同。你可以复习一下3-3的外键知识