我这是java查询mysql的问题
数据库中有表: price
id                    price
1                     3元/只
2                     4元/只
3                     1元/只
4                     2.5元/只
7                     3元/只
8                     5元/只
10                    5.5元/只
11                    2.3元/只
12                    7元/只
14                    12元/只
19                    13.5元/只
21                    16元/只
23                    14元/只如何查询price在 3元/只 和 8元/只 范围内的数据啊(数据库里的数据是不能变的了)
用 hibernate怎样写hql语句查询啊????

解决方案 »

  1.   

    Transaction trans=session.beginTransaction();
    String hql="from price where price.pirce between 3 and 8"; 
    Query queryupdate=session.createQuery(hql);
    int ret=queryupdate.executeUpdate();
    trans.commit();
    给分结帖吧
      

  2.   

    price设置为字符段类型的话,麻烦多多 还是2楼说的对,应该用数字模型来做。
      

  3.   

    为什么要把“元/只”也存进去呢?要只是数字的话between一下就可以了。
      

  4.   

    还有哦,DB的设计应该是方便程序员的,任何数据的修饰都应该放在前台,因为客户只能看到前台并不关心你DB里的数据到底是代表什么东西。
      

  5.   

    如果数据库数据格式不能变的话,可以再建一个视图,这个视图创建的目的是把元/只去掉,怎么去呢,利用数据库中的函数instr和substr即可.然后再用hibernate机制来查询,很方便的哟,