为了账号安全,请及时绑定邮箱和手机立即绑定

HQL数据查询用法与举例

标签:
Java MySQL

练习一:
1.查询商品的名称、价格、所属商家名称、类别。
2.查询范围限制类别与"书"相关,价格不低于10元的商品。
3.查询结果按照商品的所属商家名称排序,价格降序和商品名称升序排序。

    @Test
    public void Exercise01() {
        String hql = "select c.name,c.price,seller.name,c.category from "
                + "Commodity c where c.category like '%书%' and c.price > 10"
                + "order by seller.name asc,c.price desc,c.name asc";
        System.out.println(hql);
        Query query = session.createQuery(hql);

        List<Object[]> List = query.list();
        for (Object[] objs : List) {
            System.out.println("name:"+objs[0]);
            System.out.println("price:"+objs[1]);
            System.out.println("seller name:"+objs[2]);
            System.out.println("category:"+objs[3]);
        }
    }

练习二:
1.查询订单的客户姓名、交易日期、订单状态、订单金额。
2.查询范围限制在交易日期为2015-05-01到2015-06-01之间。订单状态为已发货或者已付款、订单金额大于1000元的订单信息。
3.查询结果按照订单状态升序、交易日期降序、订单金额降序排序

    @Test
    public void Exercise02() {
        String hql = "select new list(customer.name, o.tradeDate,o.status,o.amount)"
                + "from Order o where o.status in ('已发货','已付款') and o.tradeDate between '2015-05-01' and '2015-06-01' "
                + "and o.amount > 1000 order by o.status asc,o.tradeDate desc,o.amount desc";
        System.out.println(hql);
        Query query = session.createQuery(hql);

        List<List> Lists = query.list();
        for (List list : Lists) {
            System.out.println("name:"+list.get(0));
            System.out.println("tradedate:"+list.get(1));
            System.out.println("status:"+list.get(2));
            System.out.println("amount:"+list.get(3));
        }
    }
点击查看更多内容
3人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
移动开发工程师
手记
粉丝
0
获赞与收藏
20

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消