mysql char函数 返回十六进制值问题请教

东扯 2020-10-16 11:57:15
各位大佬,小弟初学,按教程使用char()函数输出特殊字符。

select char(97);

按理应该直接返回a,但结果返回了0x61

有大佬知道原因的吗?百度一圈了没发现一样的情况

但是使用ASCII函数就没问题

...全文
518 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
东扯 2020-11-01
  • 打赏
  • 举报
回复
哇喔,真的,感谢
我懒我吃亏 2020-10-30
  • 打赏
  • 举报
回复
默认用法不太一样了
像下面使用:
mysql> SELECT CHAR(97 using utf8mb4);
+------------------------+
| CHAR(97 using utf8mb4) |
+------------------------+
| a |
+------------------------+
1 row in set (0.00 sec)

mysql> SELECT CHAR(97 using ascii);
+----------------------+
| CHAR(97 using ascii) |
+----------------------+
| a |
+----------------------+
1 row in set (0.01 sec)

mysql>
东扯 2020-10-22
  • 打赏
  • 举报
回复
有知道啥情况的大佬吗,求教
东扯 2020-10-17
  • 打赏
  • 举报
回复
试了下,只要函数中包含了char()函数都会返回成十六进制。
比如用concat('a',char(97)),输出也是0x6161
如果用concat ('a','a'),就没问题

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧