在DataBase中我存储了一些信息(在Attached ScreenShot中表示)
获得最长层次结构ID的最佳方法是什么? 在附加图片中,最长的层次结构是128,因为它在其字段中具有最少数量的0值(t_definition_types_id_(1-4))
谢谢
答案 0 :(得分:2)
另一种方式是:
SELECT id,
(IF(t_definition_types_id_1>0, 1, 0) +
IF(t_definition_types_id_2>0, 1, 0) +
IF(t_definition_types_id_3>0, 1, 0) +
IF(t_definition_types_id_4>0, 1, 0)
)
AS level
FROM mytable ORDER BY level DESC
答案 1 :(得分:1)
试试这个:
SELECT id
FROM myTable
ORDER BY
t_definition_types_id_4 DESC,
t_definition_types_id_3 DESC,
t_definition_types_id_2 DESC,
t_definition_types_id_1 DESC
LIMIT 1;
这个问题有点模糊,但我认为这就是你想要做的事情。如我错了请纠正我。