a,b,c,d分别是几个表的别名
然后按a.company,ordrno来排序
where是过滤条件

解决方案 »

  1.   

    a,b,c,d分别是几个表的别名,别名是你任意取的代号,可以在本条SQL语句中代替
    表名,你这个例子中,用a代表customer 表,等等。
    where是过滤条件,也可以说是表之间的连接(join)。
    order by a.company, orderno是按a.company,ordrno来排序
    》》orderno前面一定要有别名的。除非这个字段在四个表中是唯一的。
      

  2.   

    customer a, orders b, items c, parts d这些都是表名
    a.custno是a表中的custno属性,是列名
    b.custno是b表中的custno属性,也是列名
    因为a表和b表中都有custno属性,所以前面要加表明以示区别
    其他以此类推
    order by 排序,后面跟着的就是排序条件
      

  3.   

    我也来说几句吧
    select * from customer a, orders b, items c, parts d
    where a.custno = b.custno
      and b.orderno = c.orderno
      and c.partno = d.partno
    order by a.company, orderno
    这是简单的关联查询,customer和orders通过custno字段关联,orders和items通过orderno关联,等等
    select * 说明选出这几个表的所有字段,本来应该这样些的
    select * from customer, orders, items, parts
    where customer.custno = orders.custno
      and orders.orderno = items.orderno
      and items.partno = parts.partno
    order by customer.company, items.orderno
    但是为了书写方便,给每个表都加上别名(别的名称),就是对应的a,b,c,d,order by是排序,按customer的company字段和items的orderno字段按升序排序
      

  4.   

    agree ZengXi(var Mm: TObject) 
    UP