mysql - 如何按另一行值对表结果排序
问题描述
我创建了一个查询来选择record
表中存在其他行的列,但我想添加order by
另一个行值的哪个订单。
SELECT
record
FROM
record_attributes
GROUP BY
record
HAVING
sum(type = 'lead' AND option_name = 'pupil_cap' AND value > 0) > 0 AND
sum(type = 'lead' AND option_name = 'car_type' AND value = 'Manual') > 0 AND
sum(type = 'lead' AND option_name = 'instructor_areas_covered' AND value = '26') > 0 AND
sum(type = 'lead' AND option_name = 'diary_updates' AND value = '1') > 0
如何使用以下数据通过同一表中的另一个查询对这些结果进行排序:
ORDER BY record_attributes.value WHERE record_attributes.type = 'lead' AND record_attributes.option_name = 'instructor_rank'
如果该行不存在,那么使用这个:
ORDER BY record_attributes.value WHERE record_attributes.type = 'lead' AND record_attributes.option_name = 'instructor_start_date'
解决方案
不确定我理解正确。
但是像这样的东西?
...
ORDER BY
MAX(CASE WHEN type = 'lead' AND option_name = 'instructor_rank' THEN value END),
MAX(CASE WHEN type = 'lead' AND option_name = 'instructor_start_date' THEN value END)
您可以在rextester上对其进行测试。
推荐阅读
- javascript - HTML下拉列表中的VBA选择选项
- apache - Google 域转发到 Digital Ocean linux 服务器,运行 Apache2 子文件夹,并以 root 显示域
- c# - 如何在 VS Code 中使用 C# 项目?
- mysql - 尝试将表中的多个值相乘
- python-2.7 - 如何通过文本输入退出 pygame?
- python-3.x - argparse 短版选项组合不正确
- html - 导航栏在html中隐藏网页内容和侧边栏内容
- python - 创建 2D 等高线图
- r - R 逻辑运算符的逆不返回任何内容
- c# - 使用错误代码 MovedPermanently 和 Http 状态代码 MovedPermanently 发出请求时出错。服务没有返回更多错误信息?