gpt4 book ai didi

mysql - 按 "count (columns not null)"排序

转载 作者:行者123 更新时间:2023-11-29 01:33:15 24 4
gpt4 key购买 nike

我正在寻找一种方法,通过计算值不为空的列来对 MySQL 结果进行排序。因此,

[id] [1] [1] [0] [1] [1] = 4

[id] [0] [1] [1] [1] [0] = 3

[id] [0] [0] [0] [1] [1] = 2

[id] [1] [0] [0] [0] [0] = 1

在上面的例子中,我忽略了 ID 列,但实际上我不在乎。 ID 始终为 NOT NULL,因此将其添加到计数中不会改变结果。

任何人对此有任何想法,但不涉及对结果进行 PHP 解析到新数组中?我试图将处理部分保留在数据库级别。

最佳答案

ORDER BY IF(`a` IS NULL, 0, 1) + IF(`b` IS NULL, 0, 1) ... DESC

其中 a, b, ... 是字段的名称(是的,您需要手动枚举它们)

PS:如果您不知道0NULL 之间的区别,请查看:

ORDER BY `a` + `b` ... DESC

对你来说已经足够了

关于mysql - 按 "count (columns not null)"排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5055540/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com