‘壹’ 查询 Oracle 数据库 的select,数据库两个int类型的字段分别是 字段A和字段B,现在我想
select *from table where cast( A||B as integer )<2012 ORDER BY cast( A||B as integer ) DESC
‘贰’ 如何在sql中把int转为string-CSDN论坛
在Oracle中可以这样来实现:
selectto_char(11122)fromal;
在sql server中可以这样来实现:
selectcast(11111asvarchar);
‘叁’ oracle sql语句数字递增问题
没用过 oracle,我是用sql server的,不过感觉应该差不多。
但是没太看懂你的问题意思,
觉得你用char不保险,为什么不用varchar呢?
你可以把需求说的清楚点吗?我能写出sql server的,相信会对你有帮助
‘肆’ Oracle中如何用SQL把字符串转换成整型
您可以使用cast函数将数字字符串转化为整型。
cast函数格式如下:
CAST(字段名 as int);
拓展资料
结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ "S-Q-L"),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
1986年10月,美国国家标准协会对SQL进行规范后,以此作为关系式数据库管理系统的标准语言(ANSI X3. 135-1986),1987年得到国际标准组织的支持下成为国际标准。不过各种通行的数据库系统在其实践过程中都对SQL规范作了某些编改和扩充。所以,实际上不同数据库系统之间的SQL不能完全相互通用。
‘伍’ sql中CONVERT()函数在oracle中是什么
convert在ORACLE里面不是转换字符集的,
ORACLE
To_char:转换成字符串类型,如:To_char(1234.5, '$9999.9'),结果:$1234.5
To_date:转换成日期类型,如:To_date('1980-01-01', 'yyyy-mm-dd'),结果:01-1月-80
To_number:转换成数值类型,如:To_number('1234.5'),结果:1234.5
‘陆’ Oracle数据库to_date()和to_char()的相关
select * from T_A a where a.begintime=to_date('2013-1-1','yyyy-mm-dd');
和
select * from T_A a where to_char(a.begintime,'yyyy-mm-dd')='2013-1-1';
查询结果是一样的.
区别在于 查询的 处理步骤不一样.
select * from T_A a where a.begintime=to_date('2013-1-1','yyyy-mm-dd');
是先把 '2013-1-1' 这个字符串, 转换为日期格式, 然后去和数据库里面做比较.
如果有 1000 行数据, 那么操作就是
1次 字符转换为 日期, 1000 次日期比较。
select * from T_A a where to_char(a.begintime,'yyyy-mm-dd')='2013-1-1';
是把数据库里面的每一行的 begintime, 转换为 字符格式, 然后去和数据库里面做比较。
如果有 1000 行数据, 那么操作就是
1000次 日期转换为字符, 1000 次字符串比较。
‘柒’ oracle中如何将varchar型转换成int型
这样:select to_number('123') from al
oracle没有显示的INT型,你直接定义成number就好,强制类型转换函数都差不多,转换为日期型就是TO_DATE(),
转换为数字就是TO_NUM(),转换为字符就是TO_CHAR(),括号中跟需要转换的内容,日期型注意格式掩码。
(7)oraclesqltoint扩展阅读:
注意事项
CAST()和CONVERT()函数可用来获取一个类型的值,并产生另一个类型的值。
这个类型可以是以下值其中的一个:
BINARY[(N)]
CHAR[(N)]
DATE
DATETIME
DECIMAL
SIGNED[INTEGER]
TIME
UNSIGNED[INTEGER]
所以也可以用CAST解决问题:
selectserver_idfromcardserverwheregame_id=1orderbyCAST(server_idasSIGNED)desclimit10
也可以使用CONVERT来搞定此问题:
selectserver_idfromcardserverwheregame_id=1orderbyCONVERT(server_id,SIGNED)desclimit10
‘捌’ oracle数据库的 to char 和to date 区别
一、功能不同
1、to char:将时间日期按照指定的格式输出,得到的是字符串,而非date类型。
2、to date:将字符串按照指定的格式输出,得到的是日期类型。
二、语法不同
1、to char:to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') 。
2、to date:to_date('2004-05-07 13:23:44','yyyy-mm-dd hh24:mi:ss') 。
三、规则不同
1、to char:只要被转换的是一个日期,yyyy,mm,dd中间加不加连接符,加什么连接符都可以。
2、to date:第一个参数的yyyy,mm,dd之间有没有连接符。如果有,那么第二个参数必须有连接符,随便是什么连接符。
‘玖’ 如何用SQL语句把int型转换为datetime型
SQL语句把int型转换为datetime型可以利用LELECT函数。
举例来说:
1、有可能是与一个基数对比,比如:SELECTdatediff(day,'1952-2-1','2018-1-8'),datediff(n,'00:00','07:00')。
2、int 2010 cast(convert(varchar(8),2010)as datetime)。