select * from ubl_addr where bid between 1 and 30;

解决方案 »

  1.   

    bid是varchar2型,那么'1'和'1000'都会查询出来,我想只查询1-30的整数
      

  2.   

    select * from ubl_addr where to_number(bid) between 1 and 30;
      

  3.   

    select * from ubl_addr where to_number(bid) between 1 and 30;
      

  4.   

    select * from ubl_addr where to_number(bid)>=1 and to_number(bid)<30 反而查不出记录这种情况好像不大可能吧?检查一下是不是泥的查询工具的问题?
      

  5.   

    我在sqlplus中用的select * from ubl_addr where to_number(bid) between 1 and 30能查出记录,但显示记录完后还有ERROR:ORA-01722: 无效数字的错误,不知道怎么回事
      

  6.   

    你的bid列里有不是数字的
    用select to_number(bid) from ubl_addr;
    看看在哪一行出错