mysql substrb和substr
时间: 2023-04-07 07:03:53 浏览: 151
函数有什么区别?
MySQL中的substr函数和substrb函数都是用于截取字符串的函数,但它们的区别在于substrb函数是按照字节来截取字符串,而substr函数是按照字符来截取字符串。如果字符串中包含中文等多字节字符,那么使用substr函数可能会出现截取不准确的情况,此时应该使用substrb函数来截取字符串。
相关问题
mysql的substr
MySQL的substr函数是用来截取字符串的。它有两种语法格式,一种是`substr(obj FROM start FOR length)`的形式,另一种是`substr(obj, start, length)`的形式。
这个函数的作用是从给定的字符串中截取指定长度的子字符串。它可以用于截取字符串或者截取查询结果。
在使用substr函数时,需要注意substr以字符串为单位进行截取,而substrb以字节为单位进行截取。所以如果在字符串中存在多字节字符(比如中文),建议使用substrb函数来确保正确截取。
总结起来,MySQL的substr函数可以根据给定的起始位置和长度来截取字符串,可以用于截取字符串或者截取查询结果,但需要注意处理多字节字符时使用substrb函数来确保正确截取。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [MySQL substr函数使用详解](https://blog.csdn.net/wangyuxiang946/article/details/123152114)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
把这个sql语句转化为MySQL的sql语句(SELECT c."name", b."diagnose", substrb ( to_char( trunc( SYSDATE, 'yy' ), 'yyyymmdd' ), 0, 4 ) - substrb ( to_char( trunc( c."birthday", 'yy' ), 'yyyymmdd' ), 0, 4 ) "年龄", c."home_address" FROM "wjj_yy_yldsj_mzghxx" a, "wjj_yy_yldsj_mzgzrz" b, "wjj_yy_yldsj_grjbxxb" c WHERE a."org_reg_id" = b."register_id" AND a."reg_class" = 2 AND a."org_code" = b."org_code" AND a."personid" = c."personid";)
以下是将该SQL语句转化为MySQL的语句:
SELECT c.`name`, b.`diagnose`, SUBSTR(TO_CHAR(TRUNC(SYSDATE(), 'yy'), 'yyyymmdd'), 1, 4) - SUBSTR(TO_CHAR(TRUNC(c.`birthday`, 'yy'), 'yyyymmdd'), 1, 4) AS `年龄`, c.`home_address`
FROM `wjj_yy_yldsj_mzghxx` a, `wjj_yy_yldsj_mzgzrz` b, `wjj_yy_yldsj_grjbxxb` c
WHERE a.`org_reg_id` = b.`register_id`
AND a.`reg_class` = 2
AND a.`org_code` = b.`org_code`
AND a.`personid` = c.`personid`;
阅读全文