请帮助写个SQL语句,要求一句话能完成.
以下为生成的结果
供应商订单编号
001PO001
PO002
PO003
PO004
002AB001
AB002
供应商表:
idname
001001 english name
002002 english name
订单表:
ponbrvendor
001PO001
001PO002
001PO003
001PO004
002AB001
002AB002
以前看到有人写过,一下子想不起来如何写了,一个LEFT JOIN就能完成的.
[解决办法]
create table 订单表(ponbr varchar(10),vendor varchar(10))insert into 订单表 values('001', 'PO001')insert into 订单表 values('001', 'PO002')insert into 订单表 values('001', 'PO003')insert into 订单表 values('001', 'PO004')insert into 订单表 values('002', 'AB001')insert into 订单表 values('002', 'AB002')goselect case when vendor = (select top 1 vendor from 订单表 where ponbr = t.ponbr order by vendor) then ponbr else '' end 供应商 , vendor 订单编号 from 订单表 t/*供应商 订单编号 ---------- ---------- 001 PO001 PO002 PO003 PO004002 AB001 AB002(所影响的行数为 6 行)*/select case when vendor = (select min(vendor) from 订单表 where ponbr = t.ponbr) then ponbr else '' end 供应商 , vendor 订单编号 from 订单表 t/*供应商 订单编号 ---------- ---------- 001 PO001 PO002 PO003 PO004002 AB001 AB002(所影响的行数为 6 行)*/drop table 订单表