mysql - 平面表上的 mySQL 包容性搜索
问题描述
我有下面的 SQL 表,我想知道是否可以使用这种表格式进行包容性搜索?这意味着如果有人要搜索 SSNU 和 ACCOUNT_NO,它只会在 CASE ID 具有与输入匹配的 SSNU 和 ACCOUNT_NO 时返回数据。
我尝试了如下的 where 子句:
AND (a.KEY = "ACCOUNT_NO" AND a.VALUE = "XXXXXX")
AND (a.KEY = "GPID" AND a.VALUE = "XXXXX")
但没有任何运气。
解决方案
如果“人”是指“案例ID”,那么我认为您需要聚合:
select case_id
from t
where (a.KEY = 'ACCOUNT_NO' AND a.VALUE = 'XXXXXX') or
(a.KEY = 'GPID' AND a.VALUE = 'XXXXX')
group by case_id
having count(distinct a.key) = 2;
这将返回同时具有键/值对的案例。
推荐阅读
- angular - Angular 可观察缓存数据
- css - Kendo Angular Grid CSS - 覆盖默认链接样式
- c++ - 关于取消引用运算符是否在表达式中产生对象与值的定义模糊
- java - 如何为提供的 WSDL 编辑 Java 类
- tensorflow - 如何处理 parse_single_example 函数中的 categorical_column。
- laravel - Laravel:仅在 DOM 中可用时验证输入
- python - Keras 预测每次都返回相同的结果
- angular - 预期会出现错误“,”。ngOnInit 中的 ForkJoin 和 combineLatest
- android - 未发现 Android 5.x BLE GATT 服务,但设备已连接
- python - PyQt5 macOS 使用