3
Q
检查列的升序
A
回答
5
没有,是不是这个特定的语法。最简单的方法可能是获得之前的值,然后检查。下面是一个使用相关子查询的一种方法:
select name,
(case when sum(c_prev > c) = 0 then 'All Ascending'
else 'Oops'
end)
from (select t.*,
(select t2.c
from thistable t2
where t2.name = t.name and t2.year < t.year
order by t2.year desc
limit 1
) as c_prev
from thistable t
) t
group by name;
下面是另一种方法:
select t.name,
(case when group_concat(c order by c) = group_concat(c order by year)
then 'All Ascending'
else 'Oops'
end)
from thistable t
group by t.name;
这是它如何处理相等的值稍有不同。此外,这受到group_concat()
结果长度上的字符串长度限制(可以通过更改参数使用该长度进行覆盖)。但是,为了某些目的,这可能会很方便。
相关问题
- 1. 检查球拍列表的升序
- 2. 它不会检查如果阵列是按升序排列
- 3. 检查mysql的升序字段
- 4. 如何检查我的数组是否按升序排列?
- 5. 函数的算法是什么,检查升序数组有多少个序列。并检测最长序列c
- 6. prolog检查一个列表是否是升序
- 7. Haskell:非详尽模式 - 检查列表是否正在升序
- 8. 检查了一些数字按升序排列
- 9. 当另一列有重复值时检查其他列的升序
- 10. 阵列升序
- 11. 如何检查数组是降序,升序还是未排序?
- 12. 检查升压使用MinGW
- 13. 检查列表中的特定序列
- 14. 升序排列3
- 15. 升序,在列表
- 16. 序列号检查器
- 17. jQuery/Javascript序列检查
- 18. 算术序列检查
- 19. 序列化升压阵列
- 20. 升序列表排列
- 21. 以升序排列多列
- 22. 查找升序排列矩阵的列和行索引
- 23. 提升树的序列化?
- 24. 升序排列的foreach
- 25. 顺序按升序排列
- 26. 升序和降序排列
- 27. 可以用升压测试检查我的程序输出吗?
- 28. 使用SQL查询检查序列
- 29. 的Installshield - 升级时检查其已升级到某个版本
- 30. 所选列的升序排列