在sql语句中怎样把char类型转换成int类型

 时间:2024-10-24 22:09:03

首先char类型的必虔銎哂埽须是数字,将字符的数字转成数字,比如'0'转成0可以直接用加法来实现;

例如:将pony表中的d 进行排序,可d的定义为varchar,可以这样解决;

select * from pony order by (d+0);

在进行ifnull处理时,比如 ifnull(a/b,'0') 这样就会导致 a/b成了字符串,因此需要把'0'改成0,即可解决此困扰;

比较数字和varchar时,比如a=11,b="11ddddd"。

在sql语句中怎样把char类型转换成int类型

扩展资料

char类型占1字节,就是8位,所能存储的正整数是 0111 1111,即127。现在将 int 型的整数i= 128 赋予ch,会产生溢出。

因128是 int 型,占 4 字节,二进制代码为 0000 0000 0000 0000 0000 0000 1000 0000.。若将它赋给一个只有8位的char 类型变量,只能将低8位的1000 0000 放进去,其他的都会被删掉。

整数在计算机中都是以补码的形式存储的,此时1000 0000 在计算机的眼里,是一个补码,最左边是 1 表示负数,补码1000 0000 所对应的十进制是 -128,所以最后输出的就是 -128。因此溢出会使得最大正整数变成最小负整数。

  • 如何使用命令行在Linux中查找文件和文件夹
  • linux如何删除文件
  • cmd切换到d盘
  • 怎么看端口是否被占用
  • sql server 2017如何新建数据库
  • 热门搜索
    秋天有什么花开放 维生素e的功效 缺乏维生素c的症状 苏打水有什么作用 亚麻得什么意思 三角梅的养殖方法 什么时候打仗 司空见惯的意思是什么 野兔养殖 一丘之貉是什么意思