我已经搜索了很长时间,但是我找到的解决方案并没有按我的需要工作。
让我解释一下:我有一张包含数千种产品的表格,每个产品都有一个字母数字 SKU,也用于排序。该 SKU 包括:
Category Code
(可变数量的字母字符),
Product Number
(整数),
Product Model Variation
(可选,可变数量的字母字符)
例如:(MANT 12 CL
不带空格)
现在,我需要像这样订购它们(如果这些是文件名,OSX Finder 会完美地订购它们):
MANT1
MANT2
MANT2C
MANT2D
MANT2W
MANT3
MANT4C
MANT9
MANT12
MANT12C
MANT12CL
MANT12P
MANT13
MANT21
MANT24
MANT24D
MANT29
当然ORDER BY sku
显然是错误的:
MANT1
MANT12
MANT12C
MANT12CL
MANT12P
MANT13
MANT2
MANT21
MANT24
MANT24D
MANT29
MANT2C
MANT2D
MANT2W
MANT3
MANT4C
MANT9
并且ORDER BY LENGTH(sku), sku
在排序模型变体时遇到问题:
MANT1
MANT2
MANT3
MANT9
MANT12
MANT13
MANT21
MANT24
MANT29
MANT2C
MANT2D
MANT2W
MANT4C
MANT12C
MANT12P
MANT24D
MANT12CL
那么,有没有办法像 Finder 那样对这些东西进行排序?
(此外,一旦排序,有没有办法获得下一个和上一个产品?我不介意使用几个查询:此时优雅是我的最后一个问题......)
提前谢谢大家。
最后一件事:在我的搜索过程中,我找到了一个类似问题的答案, 但我不知道如何在 PHP 中使用它,所以我不知道它是否有效,实际上是我的问题的答案。