问题是这样的:    我在数据库中定义了一个字符型字段plu(必须这样)
    这个表明叫pt然后我的sql语句是这样的 select * from pt order by plu但是得到的结果是这样的:            假如有这几个数据记录:
                                       100.1
                                       99.2
                                       2.3
                                       1000.9
                                       1.5
                                       
排序的结果是这样的:
                                       1.5
                                       100.1
                                       1000.9
                                       2.3
                                       99.2
                                       
而我想要的结果是这样:                                                    
                                       1.5
                                       2.3
                                       99.2
                                       100.1
                                       1000.9我想用sql:='select * from pt order by double(plu)';但是报错,请问该如何解决,我用的是access

解决方案 »

  1.   

    试试
    sql:='select * from pt order by plu * 1.0'
      

  2.   

    select * from pt order by Convert(Decimal(19,4),plu)
      

  3.   

    select * from test order by cast(plu as real)
      

  4.   

    cll007的程序报不知名错误才鸟的ok为了公平起见,再试验一下小虫的
      

  5.   

    不好意思,小虫的也报错,说Convert未定义,
      

  6.   

    sql:='select * from pt order by Convert(Decimal(19,4),plu)'
      

  7.   

    呵呵, 我是Access XP 可以的, 测试通过才给你贴出来的.