假设我有一张带字段的table item_featured 值为yes或no。现在我想对所有行进行排序,在最前面是featured yes,后面是non featured item。所有都将按id的描述顺序。是否可以使用1个查询?
item_featured
ubbxdtey1#
考虑条件排序:
order by (item_featured = 'Yes') desc, id desc
理由:表达 item_featured = 'Yes' 产量 1 如果条件已满,则为 0 -所以降序排序 'Yes' 排在第一位。然后,第二个排序条件按降序排列组中的行 id .请注意,正如chrisg所评论的,如果 'Yes' 以及 'No' 是唯一可能的值,可以简化为:
item_featured = 'Yes'
1
0
'Yes'
id
'No'
order by item_featured desc, id desc
这是因为,从字符串的Angular 来看, 'Yes' 大于 'No' .
1条答案
按热度按时间ubbxdtey1#
考虑条件排序:
理由:表达
item_featured = 'Yes'
产量1
如果条件已满,则为0
-所以降序排序'Yes'
排在第一位。然后,第二个排序条件按降序排列组中的行id
.请注意,正如chrisg所评论的,如果
'Yes'
以及'No'
是唯一可能的值,可以简化为:这是因为,从字符串的Angular 来看,
'Yes'
大于'No'
.