relationship query question
Posted by:
Manhao Chen
Date: September 15, 2012 01:20AM
hi all,
i have a table called tbl_tasks which stores all the tasks entries
i have another table which looks like this
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for `tbl_relationship_lookup`
-- ----------------------------
DROP TABLE IF EXISTS `tbl_relationship_lookup`;
CREATE TABLE `tbl_relationship_lookup` (
`PK_relationship_lookup` int(11) NOT NULL AUTO_INCREMENT,
`FK_Parent_ID` int(11) NOT NULL,
`FK_Child_ID` int(11) NOT NULL,
`Relationship_Comment` varchar(255) DEFAULT NULL,
PRIMARY KEY (`PK_relationship_lookup`),
KEY `KEY_parent_id1` (`FK_Parent_ID`),
KEY `KEY_child_id1` (`FK_Child_ID`),
CONSTRAINT `KEY_child_id1` FOREIGN KEY (`FK_Child_ID`) REFERENCES `tbl_task` (`PK_task`) ON DELETE CASCADE ON UPDATE NO ACTION,
CONSTRAINT `KEY_parent_id1` FOREIGN KEY (`FK_Parent_ID`) REFERENCES `tbl_task` (`PK_task`) ON DELETE CASCADE ON UPDATE NO ACTION
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
what the case is about is that a task could have number of parent tasks and child tasks
which is all handled by the table above
i'm now trying to write a query to get all tasks that is not a child or a parent related to a certain task
for example
if task pk1 is a parent of task pk2
task pk2 has 1 parent which is task pk1 and also a child of task pk3
it would look like
PK_relationship_lookup | FK_Parent_ID | FK_Child_ID
1 | 1 | 2
2 | 2 | 3
i'm trying to write a query to list all the task that is not associated with a certain pk
for example, if i query for pk1, i would expect to see all my tasks EXCEPT pk 1 (itself) and 2 (already related)
so another example is if i search for pk2
i expect to see all cases EXCEPT for pk1 (already its parent) pk2 (itself) and pk3 (already a child)
so another words, anything from pk4 onwards
any ideas?
Subject
Views
Written By
Posted
relationship query question
2521
September 15, 2012 01:20AM
960
September 16, 2012 10:59AM
991
September 16, 2012 12:08PM
Sorry, you can't reply to this topic. It has been closed.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion
of Oracle or any other party.