ACCESS数据库里,我要调出ID字段成这样的效果,但是不知道怎么排序:
1
2
3
4
5
6
7
8
9a
9b
10
11
12
13
ACCESS自动排序,是这样排的:
1
10
11
12
13
2
3
4
5
6
7
8
9a
9b
请问这个SQL语句应该怎么写,求SQL大侠!

解决方案 »

  1.   

    很明显,你这个字段是char类型的,无能为力
      

  2.   

    难道SQL语句中就没有办法排成我想要的那个样子吗?请教了
      

  3.   

    rodgerkong(Rodger) 说得对,字符串比较嘛,
      

  4.   

    --建立测试数据
    create table t(a varchar2(100));
    /
    insert into t
    select '1' from dual union all
    select '2' from dual union all
    select '11' from dual union all
    select '9' from dual union all
    select '22' from dual;
    /
    --执行查询
    select * from t order by a;
    --输出结果
    1
    11
    2
    22
    9
    --执行查询
    select * from t order by to_number(a);
    --输出结果
    1
    2
    9
    11
    22
      

  5.   

    sqlserver2000中可以使用CAST(a AS INT)
      

  6.   

    转换为数字
    order by cint(ID)