MySQL 如何获取varchar中特殊字符后的数值
MySQL How to get numeric value after special character in varchar
我有以下记录..
ABC/290116/1
ABC/290116/2
ABC/290116/10
如何从这些记录中获取斜杠“/”后最右边的数值(1,2,10,..)?
如果您有 PHP 每月自动重置值的代码,非常感谢。
非常感谢
假设您知道所有记录都将采用 ABC/x/y
格式并且会有 /
作为分隔符,您可以使用 explode()
来执行以下操作:
$record = "ABC/290116/10";
$value = explode("/", $record);
echo $value[2];
请注意,在这种情况下,explode()
会将 $record
拆分为三个部分,ABC
、290116
和 10
。 $value[2]
会给你第三部分。
在您将遍历多条记录的情况下,执行如下操作:
$records = array (
"ABC/290116/1", "ABC/290116/2", "ABC/290116/10"
)
foreach($records as $record) {
$value = explode("/", $record);
// Do something with your $value[2].
}
在 MySQL 中,您将使用 substring_index()
:
select substring_index(col, '/', -1)
from t;
如果你想要这个作为数字:
select substring_index(col, '/', -1) + 1
from t;
我有以下记录..
ABC/290116/1
ABC/290116/2
ABC/290116/10
如何从这些记录中获取斜杠“/”后最右边的数值(1,2,10,..)? 如果您有 PHP 每月自动重置值的代码,非常感谢。
非常感谢
假设您知道所有记录都将采用 ABC/x/y
格式并且会有 /
作为分隔符,您可以使用 explode()
来执行以下操作:
$record = "ABC/290116/10";
$value = explode("/", $record);
echo $value[2];
请注意,在这种情况下,explode()
会将 $record
拆分为三个部分,ABC
、290116
和 10
。 $value[2]
会给你第三部分。
在您将遍历多条记录的情况下,执行如下操作:
$records = array (
"ABC/290116/1", "ABC/290116/2", "ABC/290116/10"
)
foreach($records as $record) {
$value = explode("/", $record);
// Do something with your $value[2].
}
在 MySQL 中,您将使用 substring_index()
:
select substring_index(col, '/', -1)
from t;
如果你想要这个作为数字:
select substring_index(col, '/', -1) + 1
from t;