MySQL如何获取varchar中特殊字符后的数值
我有以下记录MySQL如何获取varchar中特殊字符后的数值,mysql,sql,numeric,Mysql,Sql,Numeric,我有以下记录 ABC/290116/1 ABC/290116/2 ABC/290116/10 如何从这些记录中获得斜杠“/”后最正确的数值(1,2,10,…)? 如果你有PHP代码自动重置的价值每月非常感谢 非常感谢假设您知道所有记录的格式都是ABC/x/y,并且会有/作为分隔符,您可以使用来执行以下操作: $record = "ABC/290116/10"; $value = explode("/", $record); echo $value[2]; $records
ABC/290116/1
ABC/290116/2
ABC/290116/10
如何从这些记录中获得斜杠“/”后最正确的数值(1,2,10,…)?
如果你有PHP代码自动重置的价值每月非常感谢
非常感谢假设您知道所有记录的格式都是
ABC/x/y
,并且会有/
作为分隔符,您可以使用来执行以下操作:
$record = "ABC/290116/10";
$value = explode("/", $record);
echo $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].
}
注意,在这种情况下,explode()
将$record
分为三部分,ABC
、290116
和10
<代码>$value[2]将获得第三部分
在将循环浏览多个记录的场景中,请执行以下操作:
$record = "ABC/290116/10";
$value = explode("/", $record);
echo $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中,可以使用
子字符串\u index()
:
如果您想将其作为一个数字:
select substring_index(col, '/', -1) + 1
from t;
考虑该值意味着什么,以及是否应该规范数据库表是值得的。乍一看,它似乎违反了第一个正常形式..当我尝试用mysql调用$record时,我得到了“警告:explode()期望参数2是字符串”错误。如何使这个$record成为字符串?已解决:我做了$query=mysql_query(“bla-bla-bla”)$record=mysql\u fetch\u数组($query)$值=分解(“/”,$record[0]);