我有一个这种结构的表
(int)id | (text)title | (text)description | (int)related
和一个将表与自身连接起来的查询
SELECT t1.*, t2.title as relatedTitle
FROM mytable t1 LEFT JOIN mytable t2 ON t2.related=t1.id
像这样在一个 SELECT 列表中生成
title:
你好,description:
非正式的问候,see also:
你好
当一条新记录存入表时,只能引用另一条记录
我试图实现的是交叉引用
可以在 2-5 个对象中
所有对象都应在每个组合中交叉引用。我想要这个功能:如果related
设置,脚本应该自动在相关记录中创建交叉引用。如果记录被删除,脚本应该更新相关记录中的引用。
对于 3+ 交叉引用的记录,我正在考虑这个连接表
(int)id | (int)related
但 5 个交叉引用的对象将是 20 条记录。我也可以创建单列表
(varchar)relatedList
但是如何创建左连接以及如何删除此结构中的关系?或者我应该尝试其他方法,如触发器、视图或临时表?我想避免冗余并使其尽可能简单,只是想不通。