select * from tablename where colname > substring("CH-2004-02-01",3,11) and 
substring("CH-2004-03-01",3,11)后面的比较好象不对,不过大致就是这个意思,先把值取出来,再比较!

解决方案 »

  1.   

    如果前面固定是“CH-”,直接写
    select * from tablename where colname >="CH-2004-02-01" and colname <=
    "CH-2004-03-01"
    也应该不会错
    用函数的话要看是什么数据库
      

  2.   

    SELECT *
    FROM table_name
    WHERE (SUBSTRING(字段名, 3, 11) = '2004-02-01')
      

  3.   

    单据编号的值是根据日期和物品类型编的,比如CH-2004-02-01,HH-2004-03-23
    楼上的那些都没有根据比较日期来查询记录啊,比如说查询物品类型是HH。时间2月到3月的记录,想要的到的记录就是HH-2004-02-01到HH-2004-03-01之间的所有记录。包括HH-2004-02-12等一些记录,不知道大家清楚我的意思了没/在这里先谢谢各位的帮忙了,!谢谢
      

  4.   

    我也提供一种模糊查询把:
    select * from colname like ''
    我觉得还是模糊查询好,只要你前面三位固定就可以了