按用法排序的mysql订单

按用法排序的mysql订单,mysql,Mysql,这是什么意思? 这是不寻常的,通常我们用 order by `order`=0,`order` ,不是吗?这按两个值排序 排序依据的第一个值是order=0,如果order为0,则为1,否则为0=是正常的比较运算符 如果两行的值相同,则它将按顺序字段本身进行排序。这将导致所有顺序等于零的行首先按数字顺序排序,然后是顺序非零的行。如果顺序始终大于或等于零,这将与按顺序排序相同,但是,如果顺序可以为负,则会产生影响 考虑以下数据: order by `order` asc 按顺序排序将为您提供:

这是什么意思? 这是不寻常的,通常我们用

order by `order`=0,`order`

,不是吗?

这按两个值排序

排序依据的第一个值是order=0,如果order为0,则为1,否则为0=是正常的比较运算符


如果两行的值相同,则它将按顺序字段本身进行排序。

这将导致所有顺序等于零的行首先按数字顺序排序,然后是顺序非零的行。如果顺序始终大于或等于零,这将与按顺序排序相同,但是,如果顺序可以为负,则会产生影响

考虑以下数据:

order by `order` asc
按顺序排序将为您提供:

Order | ID
======|===
0     | A
10    | B
5     | C
-5    | D
Order | ID
======|===
-5    | D
0     | A
5     | C
10    | B
按订单排序=0时,订单将为您提供:

Order | ID
======|===
0     | A
10    | B
5     | C
-5    | D
Order | ID
======|===
-5    | D
0     | A
5     | C
10    | B
请注意,ID为A的行位于开始处,以前是第二行