我有一个MySQL字段保存打印的照片大小作为文本,如:4x6、5x7、8x10、16x20、20x24等
我需要在使用PHP的下拉框中列出这些,但在维度顺序(如上所列)。如果我按排序,我会得到:16 × 20、20 × 24、4 × 6、5 × 7、8 × 10.
我猜我需要对"x"的位置做点什么。它总是在2号或3号位置但我不知道怎么排序。任何想法吗?
很丑,但是…
ORDER BY
CAST(SUBSTR(yourfield, 0, LOCATE('x', yourfield)) AS int),
CAST(SUBSTR(yourfield FROM (LOCATE('x', yourfield) + 1)) AS int)
没有经过测试,可能是错误的,但应该可以达到目的。如果这是经常做的事情,我建议将这两种大小存储在单独的INT字段中,并在显示时间需要时将它们连接/字符串化。