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;
s.parend_id这个字段哪里来的?为什么它连接p.type_id
表中的type.name就会显示汉字?type_id应该是数字啊。
ON s.parent_id = p.type_id;
s.parent_id是tdb_goods_types表中三个列type_id , type_name , parent_id 中的parent_id.
显示汉字是因为select语句查找显示的是type_name.
你说的ON s.parent_id = p.type_id 是连接条件 而不是显示结果
tdb_goods_types的记录
s.parend_id这个字段来源于tdb_goods_types本身,至于为什么会显示汉字,是因为链接完成之后子表与父表已经存在实际的外键关系,与物理外键相同。你可以复习一下3-3的外键知识