我如何在mysql中订购这样的产品
我怎样才能像mysql那样订购 1 1/2 2 3/1 3/2 3/12 5/1 7 13/1 当我命令它在5点之前带1 1/2 13/1我如何在mysql中订购这样的产品,mysql,Mysql,我怎样才能像mysql那样订购 1 1/2 2 3/1 3/2 3/12 5/1 7 13/1 当我命令它在5点之前带1 1/2 13/1 格式是x/x,而x是数字我认为您需要将该列拆分为两个单独的列。我绝不是MySQL专家,您可能需要将其包装在subselect中或以其他方式对其进行操作,正如我们所讨论的,您需要将这些字符串转换为整数(我似乎无法在MySQL安装中实现这一点,但我从未使用过它): 那么你有一个varchar?包含1或2个整数的列(如果是2个整数,则它们之间用“/”分隔),您希望
格式是x/x,而x是数字我认为您需要将该列拆分为两个单独的列。我绝不是MySQL专家,您可能需要将其包装在subselect中或以其他方式对其进行操作,正如我们所讨论的,您需要将这些字符串转换为整数(我似乎无法在MySQL安装中实现这一点,但我从未使用过它):
那么你有一个varchar?包含1或2个整数的列(如果是2个整数,则它们之间用“/”分隔),您希望使用此列对结果进行排序-按第一个整数进行数字排序,如果存在,则按第二个整数排序?按类型排序(houeNo为十进制)我尝试了此方法,但效果不正确
select
SUBSTRING_INDEX(a,'/',1) as PartA,
CASE WHEN LOCATE('/',a) > 0 THEN SUBSTRING_INDEX(a,'/',-1) ELSE '0' END as PartB
from
<rest of query>
select
CAST(SUBSTRING_INDEX(a,'/',1) as decimal) as PartA,
CAST(CASE WHEN LOCATE('/',a) > 0 THEN SUBSTRING_INDEX(a,'/',-1) ELSE '0' END as decimal) as PartB
from
<rest of query>