mysql - 从两个名为共同 friend 和喜欢的表(关系)中找到一种喜欢的 friend 。SQL,数据库

标签 mysql sql database oracle social-networking

两个表被命名为“like”,其他表被命名为“friends”。 两者都包含两列。第一列包含用户与第二列中共同好友的 ID 号。 我只想知道查询是 从喜欢表中删除包含共同 friend 的 friend 的行,并且只有一种喜欢方式。这意味着共同 friend 中的一个不喜欢另一个。此信息在“喜欢”表中给出。 两列。 1 包含喜欢第二列中另一个的用户的 ID。

好友表

id 1     id 2                                  
11        22-                                      
22        11-                                 
33        77*                                 
55        68                                                                    
77        33*

68        55

点赞

id 1     id 2                                  
11          22   (should be DELETED)                                     
22          11   (should be DELETED)                                 
33          77   (should be DELETED)                                 
55          68    (save it)                                                                   
77          33   (should be DELETED)

最佳答案

您可以删除联接结果:

DELETE l1 FROM likes l1 JOIN likes l2 ON l1.id1 = l2.id2 AND l1.id2 = l1.id1

关于mysql - 从两个名为共同 friend 和喜欢的表(关系)中找到一种喜欢的 friend 。SQL,数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29278226/

相关文章:

php - MYSQL 与 PHP 中的查询匹配

php - 从sql中选择前50条记录

mysql - 什么是二级 SQL 注入(inject)

sql - Oracle中的字符串连接运算符是什么?

sql - 为什么没有 0 - 4,294,967,294 的数字数据类型

python - 使用 django 处理数据库迁移/升级

mysql - mysql如何合并列的值

mysql - 如果 3 个字段匹配,则插入或更新 MySQL 数据库

mysql - MySQL 中 NOW()、SYSDATE() 和 CURRENT_DATE() 之间的区别

mysql - 如何在Laravel中使用触发器?