[英]mysql remove very last character [duplicate]
这个问题在这里已有答案:
你会认为这在某个地方得到了解答,但我找不到确切的答案。 我需要删除字符串中的最后一个字符,它可以是任何字符,字符串可以是任意长度。
例如992899d需要是992899
使用SUBSTRING的任何解决方案只会通过删除最后一个字符来显示字段的内容。 它实际上不会更新列的内容。 如果这是你想要的(即使用SELECT ),那么SUBSTRING就足够了。
但是,如果要实际更新列的值 ,可以尝试以下操作:
UPDATE <table_name>
SET <column_name> = CONCAT(LEFT(<column_name>, CHAR_LENGTH(<column_name>) -1), '')
WHERE <condition>;
这将替换没有任何内容的最后一个字符,因此将删除最后一个字符。
请参阅: http : //dev.mysql.com/doc/refman/5.7/en/string-functions.html
您可能正在寻找SUBSTRING(column, 1, CHAR_LENGTH(column)-1)
。
请参阅http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_substring以供参考。
使用TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM ] str)
因为您已经知道要删除的字符串的哪个部分。
这是一张表格,其中包含我从数据库中提取的日期和给定数量:
select date_format(date, '%m/%d %I:%i%p') as Date ...
Date | QTY
-------------------
3/5 11:30AM | 46
3/5 11:30PM | 23
3/6 11:30AM | 12
...
使用修剪:
select trim(trailing 'M' from date_format(date, '%m/%d %I:%i%p')) as Date ...
Date | QTY
-------------------
3/5 11:30A | 46
3/5 11:30P | 23
3/6 11:30P | 12
...
感谢https://www.w3resource.com/mysql/string-functions/mysql-trim-function.php帮助我了解修剪
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.