我有如下記錄..MySQL的如何特殊字符後得到的數值在VARCHAR
ABC/290116/1
ABC/290116/2
ABC/290116/10
我如何斜線後得到最合適的數值(1,2,10 ......)「 /「這些記錄? 如果您有PHP代碼自動重置每月的價值非常感謝。
非常感謝
我有如下記錄..MySQL的如何特殊字符後得到的數值在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;
可能值得考慮值的含義,如果數據庫表d被標準化。乍一看,它似乎違反了第一個正常形式.. – user2864740