`
qepwqnp
  • 浏览: 118092 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

ORACLE VARCHAR 排序问题

阅读更多

为了实现varchar型的字段序号递增,我每次插入数据要先找出数据库中序号最大的那个再加1,可是对  
varchar进行order   by   时,得不到正确结果,如   varchar里,‘100’<'99'  
怎么实现转化  
另外,我只比较varchar的后几位,那个怎么截取后几位再进行int转化再排序呢?  

回答1:
select   *   from   yourtable   order   by   cast(youcol   as   int)

回答2:
order   by   convert(int,   字段)

回答3:
但是你的列里面只能是数字组成的字符,要不然会出错

回答4:
create   table   #t(  
b   int   identity(1,1),  
a   varchar(3)  
)  
insert   into   #t   select   '003'  
insert   into   #t   select   '002'  
insert   into   #t   select   '001'  
insert   into   #t   select   '010'  
insert   into   #t   select   '023'  
--insert   into   #t   select   'a03'  
   
   
select   *   from   #t   order   by   cast(a   as   int)  
   
drop   table   #t

回答5:
declare   @maxid   numeric(8)  
   
select   @maxid=max(isnull(cast(right(字段,x)   as   numeric),0)+1)  
x表示从后面取多少位。 x表示从后面取多少位。 x表示从后面取多少位

分享到:
评论

相关推荐

    oracle分组排序统计高级用法

    通过本文的介绍,我们可以看到Oracle数据库提供了多种强大的工具来处理分组、排序和统计问题。其中`GROUP BY`、`ORDER BY`、`OVER`子句以及`ROW_NUMBER()`、`RANK()`、`DENSE_RANK()`等分析函数都是非常有用的工具。...

    oracle数据库中汉字排序方法

    1. **字符集问题**:在使用`SCHINESE_PINYIN_M`排序时需要注意数据库的字符集设置。如果数据库字符集为GBK,则可以直接使用该排序规则;如果是UTF-8,则需要确保数据库配置支持UTF-8编码。 2. **性能考量**:不同...

    oracle处理的类型 oracle行排序

    Oracle支持多种数据类型,包括数值型(如NUMBER)、字符串型(如VARCHAR2)、日期时间型(如DATE)以及二进制数据(如BLOB)。此外,Oracle还提供了复杂的结构化数据类型,如对象类型、复合类型、嵌套表和集合类型,...

    带排序的oracle分页存储过程

    ### 带排序的Oracle分页存储过程 在开发Web应用程序的过程中,分页是一个非常常见的需求。为了提高系统的性能及可维护性,采用存储过程来实现分页逻辑是一种较为推荐的做法。下面将详细介绍如何利用Oracle数据库中...

    sqlserver中将varchar类型转换为int型再进行排序的方法

    为了解决这个问题,我们可以使用`CAST`或`CONVERT`函数将varchar类型的值转换为int类型,然后进行排序。以下是两种不同的转换方法: 1. 使用`CAST`函数: ```sql SELECT * FROM yourtable ORDER BY CAST(yourcol ...

    char,varchar以及varchar2的区别

    例如,`varchar2`的最大长度通常小于`varchar`,并且Oracle对`varchar2`的数据进行了更严格的校验,这有助于减少因数据格式错误引发的问题。此外,Oracle建议优先使用`varchar2`,因为它在内部处理上更为高效。 **...

    用排序哈希簇来提升查询速度

    具体来说,当创建一个排序哈希簇时,Oracle会根据指定的哈希键(Hash Key)将记录分布到不同的簇中,并且在同一簇内的记录按照排序键(Sort Key)进行排序。这种结构不仅能够加快基于哈希键的查找速度,还能够在需要...

    浅析Oracle中char和varchar2的区别

    本文主要探讨的是两种常见字符串类型:`CHAR`和`VARCHAR2`,它们在使用上有何不同,并且会涉及一些相关的Oracle数据库功能。 首先,`CHAR`是定长字符串类型,这意味着当你声明一个`CHAR(10)`字段时,无论你存储的...

    Oracle实用教程(第五版)(Oracle11g版)

    设计这些表时,我们需要考虑合适的字段类型(如VARCHAR2、NUMBER)、主键(确保每条记录的唯一性)、外键(关联不同表之间的关系)以及索引(提高查询速度)。例如,学生表可能包含学生ID(主键)、姓名、性别等字段...

    ORACLE根据某一列的值修改另一列的值

    * Oracle 数据库有多种数据类型,如 NUMBER、VARCHAR2、DATE 等。 2. 数据表设计 * 在 Oracle 数据库中,我们可以使用 CREATE TABLE 语句来创建数据表。例如,创建学生信息表 t_student 和成绩表 t_performance。 ...

    ORACLE数据库及SQL语言考试题一含答案.pdf

    4. 索引:对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。索引不论逻辑上和物理上都与相关的表的数据无关,索引需要独立的存储空间,所以索引在创建之初就需要设置对应的...

    ORACLE分区

    根据提供的文件信息,本文将详细解释Oracle分区技术及其在解决UNDOTBS01.DBF文件过大问题中的应用方法,并进一步探讨Oracle分区的不同类型及其应用场景。 ### Oracle 分区概述 Oracle分区是一种将大表或索引分割成...

    oracle数据工程师面试题.pdf

    本资源是一个Oracle数据工程师面试题库,涵盖了多个关于Oracle数据库管理和开发的问题。下面是从文件中提取的知识点: 1. 数据类型和操作 * varchar2数据类型:varchar2是Oracle中的一种字符串数据类型,用于存储...

    Oracle Sql基础(beginning oracle sql中文版)

    Oracle SQL支持多种数据类型,如CHAR、VARCHAR2(可变长度字符串)、NUMBER(数字)、DATE(日期时间)、CLOB(大对象,用于存储文本)、BLOB(大对象,用于存储二进制数据)等。选择正确的数据类型对于数据的存储和...

    Oracle SQL(SQL for Oracle)

    1. **数据类型**:Oracle支持多种数据类型,包括数值型(如NUMBER)、字符串型(如VARCHAR2和CHAR)、日期/时间型(如DATE)、二进制大对象(BLOB)等。理解这些数据类型对于创建表结构和处理数据至关重要。 2. **...

    oracle使用dblink高速复制表数据的动态存储过程

    程序同步到执行结束时的目标表所有数据,不按任何字段排序,只判断并记录row_number()到日志表,中断后重新执行可继续同步,如果目标表频繁读写,不保证数据完全正常,故最好是目标表不变动情况下执行同步。...

    oracle获取汉字拼音首字母

    ### Oracle 获取汉字拼音首字母 在Oracle数据库中实现获取汉字拼音首字母的需求,通常涉及到对中文字符的处理以及拼音转换的技术。这样的功能可以应用于多种场景,例如数据排序、索引建立或是快速检索等。本文将...

    oracle_dbo.rar

    2. 数据类型:Oracle支持多种数据类型,如CHAR、VARCHAR2、NUMBER、DATE、CLOB、BLOB等,满足不同类型数据的存储需求。 3. 表和索引:表是数据的主要容器,索引则用于提高查询性能。Oracle支持B树索引、位图索引、...

    Oracle官方文档CHM合集-SQL参考手册 Oracle教程 Oracle开发

    2. **数据类型**:Oracle支持多种数据类型,包括数值类型(如NUMBER、INTEGER)、字符串类型(VARCHAR2、CHAR)、日期时间类型(DATE、TIMESTAMP)、二进制数据类型(BLOB、CLOB)等。理解各种数据类型的用途和限制...

Global site tag (gtag.js) - Google Analytics