我有两个表格,一个是包含数字资产(例如文章,图片等)的资产表格,第二个表格是asset_links表格,它映射资产表格中包含的资产之间的1-1关系。查询返回相关资产
下面是表定义:
CREATE TABLE `asset` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`source` varchar(255) DEFAULT NULL,
`title` varchar(255) DEFAULT NULL,
`date_created` datetime DEFAULT NULL,
`date_embargo` datetime DEFAULT NULL,
`date_expires` datetime DEFAULT NULL,
`date_updated` datetime DEFAULT NULL,
`keywords` varchar(255) DEFAULT NULL,
`status` int(11) DEFAULT NULL,
`priority` int(11) DEFAULT NULL,
`fk_site` int(11) DEFAULT NULL,
`resource_type` varchar(255) DEFAULT NULL,
`resource_id` int(11) DEFAULT NULL,
`fk_user` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB;
CREATE TABLE `asset_links` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`asset_id1` int(11) DEFAULT NULL,
`asset_id2` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB;
在asset_links表有以下行:
INSERT INTO `Asset_links` (asset_id1, asset_id2) VALUES
(1,3), (1,4), (2,10), (2,56);
我期待编写一个查询将返回满足任何资产的所有资产搜索条件并在同一查询中返回该资产的链接资产的所有链接资产数据。
例如该查询返回的资产1和2将返回:
资产1属性
- 资产3属性
- 资产4属性
资产2属性
- 资产10属性
- 资产56属性
是编写查询的最好方法?
你能在阅读后回答你的问题吗?花些时间阅读常见问题解答并正确设置代码格式。 – Anax 2010-06-15 23:53:30
我试图格式化它,但没有代码标签的原始粘贴删除了空格。 OP可以放回去。 – 2010-06-15 23:58:58
我已经编辑了OP的表格定义,使其更具可读性。 – 2010-06-16 00:41:11