mysql - 如何解决SQL单向对

标签 mysql sql

你好我的问题是我必须列出所有的单相思(A 喜欢 B 但 B 不喜欢 A)

A B 
1 2 
2 1 
3 1 

在这个例子中,我的解决方案是一对 3 1(因为 1 喜欢 2 和 2 也喜欢 1 背) SQL形式应该怎么表达?

最佳答案

您可以按照与您编写问题的方式非常相似的方式来制定查询。您正在寻找不存在“B 喜欢 A”行的“A 喜欢 B”行。

假设表名是mytable:

select *
from mytable t1
where not exists (
  select *
  from mytable t2
  where t1.A = t2.B and t1.B = t2.A
);

关于mysql - 如何解决SQL单向对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63537364/

相关文章:

php - SQL 关注和关注者

mysql - If 语句未返回所需结果

mysql - Codeigniter调用存储过程进入事务

php - 使用 PHP MYSQLi 如何只获得债务人和债权人使用 action_type DR 和 CR 进行管理

mysql - 错误号 : 150 "Foreign key constraint is incorrectly formed" Nothing helps

sql - PL/pgSQL : finding all groups person belongs to (also indirectly)

mysql - SQL查询没有受到注入(inject),但是

php - mySQL 数据库 : printing specific row or rows from a db table

php - 按 2 列的平均值过滤的 Eloquent 方式

SQL 获取日期中 15 日第一次出现的情况