订单条目表OrderItem:id courseName .........
订单表Order:id stu...... 
学生表Student:id 
如何根据学生id 找到courseName啊

解决方案 »

  1.   

    我写错了 OrderItem中还有一个OrderId
      

  2.   

    id不是一个 Order中有Student
      

  3.   

    session.createQuery("select courseName from OrderItem oi,Order o, Student s where oi.orderId=o.orderId and o.studentId=?");
      

  4.   

    大概表关系
    Student
    id number (pk)
    name varchar2Order
    id number (pk)
    studentId number (fk)Item
    id number (pk)
    orderId number (fk)检索SQL语句
    select i.* from Item i, Order o, Student s
    where i.orderId=o.id and o.studentId = s.id
    and xxxx
      

  5.   

    session.createQuery("select courseName from OrderItem oi,Order o, Student s where oi.orderId=o.orderId and o.studentId=?");
      

  6.   

    终于查出来了
    public List findCourseNameByOrder(Integer id) {
       List list=ht.find("from Order o left outer join fetch o.items where o.stu.id=?",new Object[]{id});
    return list;
    }