我可以使用SQL查询构建的帮助。这是我的情况:
我想按3列订购结果。情况就是这样。我有附加项目列表,需要在该列表中只选择一个,哪个依赖于其“重要性”。重要性由以下规则决定:
问题是top参数,因为它可以包含任何文本,并且规则应该是如果它是空的(''),null或者E(E as empty)标志没有设置并且只有sev和previous应该使用,如果任何其他值在top之内,那个标志是打开的,应该使用第二个规则。
我知道(那一栏)看起来很奇怪,但实际上我只是从外面获取价值并按原样处理它们
我不能使用ORDER BY severity,top,priority
作为顶部DESC或ASC是错误的,所以我不知道如何继续。一些示例设置是sqlFiddle。
有任何想法吗?
提前帮助我。
答案 0 :(得分:1)
在ìmportance
语句中添加计算SELECT
列。请使用CASE
,以便top
为空时为null或“E”,importance
为0.否则,importance
为1。
然后ORDER BY severity,ìmportance,priority