mysql - Mysql select查询说明
问题描述
我对以下查询有疑问,请帮助我解决这个问题,
SELECT * FROM test
WHERE (field_id = 87 and value in ("xxxx")) AND (field_id = 88 and value in ("R"))
这导致空行,如何编写此查询我想使用“AND”条件匹配 id 和 value
我的表有值:
解决方案
我怀疑你在这里想要的是所有符合这两个条件的学生。一种方法是按学生汇总,然后断言条件:
SELECT student_id
FROM yourTable
GROUP BY student_id
HAVING
SUM((field_id, value) = (87, 'xxxx')) > 0 AND
SUM((field_id, value) = (88, 'R')) > 0;
演示
推荐阅读
- php - HTML/HP:Emogrifier 将 {} 变成 %7B 和 %7D
- laravel - 在有限的生命周期内使用 Passport 发行访问令牌
- sql - 如何在不使用 INSERT 函数的情况下创建 SQL 表?
- c++ - 无法使用 CMake 编译 wxWidgets 最小示例
- postman - Postman 测试脚本:什么版本的 JavaScript
- regex - 使用正则表达式提取英文字母和数字
- python - 升级到 18.1 后无法将 --extra-index-url 与 pip 一起使用
- html - 如何在表格中的输入 td 上创建边框?
- mongodb - 使用 mongo-go-driver 与 MongoDB 的数据不一致
- c# - 二维数组动态c#