我有下表
CREATE TABLE IF NOT EXISTS `friends` (
`userid` INT NOT NULL ,
`friend` INT NOT NULL ,
`status` INT(1) NOT NULL ,
INDEX `user_id_fk_idx` (`userid` ASC) ,
INDEX `friend_id_fk_idx` (`friend` ASC) ,
PRIMARY KEY (`userid`, `friend`) ,
CONSTRAINT `user_id_fk`
FOREIGN KEY (`userid` )
REFERENCES `network`.`users` (`userid` )
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `friend_id_fk`
FOREIGN KEY (`friend` )
REFERENCES `network`.`users` (`userid` )
ON DELETE CASCADE
ON UPDATE CASCADE)
ENGINE = InnoDB;
当我想在这个表中插入一个新的元组时,我想检查那个元组是否已经存在。
示例:当我在表中插入 (1,2,0) 时,当且仅当 (1,2, ) 或 (2,1, ) 不存在于表中时,它必须运行。或者,如果我在表中搜索元组 (1,2, ),它必须搜索 (1,2, ) 和 (2,1,*) 并返回结果。
目前我正在为此运行两个查询,可以将其组合在一个查询中吗?