sql - 根据组合的其他 2 列查询表中的 1 列
问题描述
表测试
- RPAN8 色谱柱
- RPVR01 柱
在 (PRAN8 + RPVR01) 中搜索 RPAN8 的唯一出现。
SELECT RPAN8
FROM Test
WHERE RPAN8 IN (SELECT DISTINCT(CONCAT(RPVR01, RPAN8))
FROM Test);
解决方案
你的问题有点不清楚,但我认为你想要只出现一次的值。您可以使用GROUP BY
和HAVING
。
目前尚不清楚您是否想要RPAN8
只出现一次的值及其RPVR01
值:
SELECT RPAN8, MAX(RPVR01)
FROM Test
GROUP BY RPAN8
HAVING COUNT(*) = 1;
或者,如果您想要只出现一次的对:
SELECT RPAN8, RPVR01
FROM Test
GROUP BY RPAN8, RPVR01
HAVING COUNT(*) = 1;
推荐阅读
- postgresql - 尝试将数据传递到数据库时发生错误:(错误:列“名称”不存在)
- closures - 为什么闭包函数不能实现尾调用优化?
- flutter - 如何在 Flutter 中为 TEXT 设置双色
- jquery - 在 Django、HTML 表单和 jQuery 中收集 IP 和浏览器代理等数据
- python - Python-requests,如何获取登录令牌
- dart - flutter dart如何列出map中特定键值的所有值
- prisma - 为什么 deleteMany 使用 2 个查询?
- twitter-bootstrap - Bootstrap 5.0.2 切换不起作用我正在按照 freecodecamp 教程使用 sass bootstrap 和 git bash 构建网站
- ravendb - 在 RavenDB 中按相关文档过滤
- angular - Angular 似乎错过了上下文