sql 字符数字类型自动转换及运算
Posted bailaowu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql 字符数字类型自动转换及运算相关的知识,希望对你有一定的参考价值。
本页面所有内容也可以在oracle 运行,只需要把int、float 、decimal 改为 number类型即可
-- 字符串转数字 int 类型
drop table test;
create table test(id int);
insert into test values(100);
insert into test values(‘100‘);
-- 字符串转数字 float 类型
drop table test;
create table test(id float(5,3));
insert into test values(10.99);
insert into test values(‘10.99‘);
-- 数字转字符串类型
drop table test;
create table test(id varchar(5));
insert into test values(100);
insert into test values(‘100‘);
-- 加减运算
-- int类型可以参与加减运算
drop table test;
create table test(id int);
insert into test values(100);
select id-10 from test;
-- double类型可以参与加减运算
drop table test;
create table test(id double);
insert into test values(100);
select id-10 from test;
-- decimal类型可以参与加减运算
drop table test;
create table test(id decimal);
insert into test values(100);
select id-10 from test;
-- 字符串类型也可以参与加减运算
drop table test;
create table test(id varchar(5));
insert into test values(100);
select id-10 from test; -- 字符串也可以减,mysql会自动转型
-- 比较运算
-- int类型
drop table test;
create table test(id int);
insert into test values(100);
select * from test where id > 1;
drop table test;
create table test(id int);
insert into test values(100);
select * from test where id > ‘1‘;
-- 字符串类型
drop table test;
create table test(id varchar(5));
insert into test values(100);
select * from test where id > ‘1‘;
drop table test;
create table test(id varchar(5));
insert into test values(100);
select * from test where id > ‘中华人民共和国‘; -- 语法正确,只是没有结果
以上是关于sql 字符数字类型自动转换及运算的主要内容,如果未能解决你的问题,请参考以下文章