SQL 如何获取A列相同但是B列不同的数据项

用户表里有两个字段:部门和职位。一个部门可能对应多个职位,多个部门也可能都有同一职位。比如:

部门 职位

财务 部长

财务 副部长

财务 会计

财务 职员

编辑 部长

编辑 副部长

编辑 主编

编辑 副主编

现在想通过筛选,获取职位名称相同,但是部门不同的数据。在本例中即为:

部门 职位

财务 部长

编辑 部长

财务 副部长

编辑 副部长

请问这样的语句应该怎么写?

利用exists 子查询即可

sql 复制代码
select * from 用户表 a where exists (select 1 from 用户表 where 职位=a.职位 and 部门!=a.部门)
相关推荐
麦聪聊数据41 分钟前
IT 的“控”与业务的“放”:构建基于 Web 原生架构的安全数据共享平台
数据库·sql·安全
rchmin1 小时前
MySQL分库分表适用场景与依据
数据库·mysql
MaisieKim_1 小时前
2025年企业文档管理系统全面评测报告
运维·数据库
f***6511 小时前
sql中COALESCE函数详解
数据库·sql
b***59431 小时前
LangChain-08 Query SQL DB 通过GPT自动查询SQL
数据库·sql·langchain
h***06652 小时前
【JSqlParser】Java使用JSqlParser解析SQL语句总结
java·开发语言·sql
u***32432 小时前
【MySQL】数据库和表的操作
数据库·mysql·oracle
好奇的菜鸟2 小时前
MySQL 8 开启远程登录
数据库·mysql·adb
Boop_wu2 小时前
[Java EE] 多线程编程进阶
java·数据库·java-ee
深瞳智检3 小时前
学习应用 第001期-Windows 10 用 CMD 安装 MySQL 全流程解析(免安装版)
数据库·windows·mysql·压缩包·环境安装