select ckmc,a.spdm,gg1dm,gg2dm,bzsj as ccj,sj1 as dpj,tzsl,kysl,zksl,ztsl,zkc from vw_hems_spkcb as a
left join shangpin as b
on a.spdm=b.spdm where ckdm>='000' and ckdm<='013' and a.spdm like '%8001%'下面是我移到delphi
sql.Clear;
sql.Add('select ckmc,a.spdm,a.gg1dm,a.gg2dm,b.bzsj as ccj,b.sj1 as dpj,a.tzsl,a.kysl,a.zksl,a.ztsl,a.zkc from vw_hems_spkcb as a');
sql.Add('left join shangpin as b on a.spdm=b.spdm ') ;
SQL.Add('and a.spdm like ''%'+edit_spdm.Text+'%''');
sql.Add('and a.gg1dm like ''%'+edit_gg1dm.Text+'%''');
sql.add('and a.gg2dm like ''%'+edit_gg2dm.Text+'%''') ;
if check_dk.Checked=true then begin
sql.Add('and a.ckdm>=''000'' and a.ckdm<=''013'' and a.qddm=''000''');
end else
if check_wf.Checked=true then begin
sql.Add('and a.qydm not in (''001'',''000'' ) and a.qddm=''000''');
end else
if check_nj.Checked=true then begin
sql.Add('and a.qydm=''001''') ;
end else begin
sql.Add('and a.qddm=''000''');
end;
SQL.Add('and a.zksl<>0');
SQL.add('order by ckmc,a.spdm,a.gg1dm,a.gg2dm') ;
close;
open;
end;
主要是ckdm(仓库代码)我明明是只查000到013代码开头的仓库。为什么所有仓库出来了。
left join shangpin as b
on a.spdm=b.spdm where ckdm>='000' and ckdm<='013' and a.spdm like '%8001%'下面是我移到delphi
sql.Clear;
sql.Add('select ckmc,a.spdm,a.gg1dm,a.gg2dm,b.bzsj as ccj,b.sj1 as dpj,a.tzsl,a.kysl,a.zksl,a.ztsl,a.zkc from vw_hems_spkcb as a');
sql.Add('left join shangpin as b on a.spdm=b.spdm ') ;
SQL.Add('and a.spdm like ''%'+edit_spdm.Text+'%''');
sql.Add('and a.gg1dm like ''%'+edit_gg1dm.Text+'%''');
sql.add('and a.gg2dm like ''%'+edit_gg2dm.Text+'%''') ;
if check_dk.Checked=true then begin
sql.Add('and a.ckdm>=''000'' and a.ckdm<=''013'' and a.qddm=''000''');
end else
if check_wf.Checked=true then begin
sql.Add('and a.qydm not in (''001'',''000'' ) and a.qddm=''000''');
end else
if check_nj.Checked=true then begin
sql.Add('and a.qydm=''001''') ;
end else begin
sql.Add('and a.qddm=''000''');
end;
SQL.Add('and a.zksl<>0');
SQL.add('order by ckmc,a.spdm,a.gg1dm,a.gg2dm') ;
close;
open;
end;
主要是ckdm(仓库代码)我明明是只查000到013代码开头的仓库。为什么所有仓库出来了。
left join shangpin as b on a.spdm=b.spdm
and a.spdm like '%8001%'
and a.gg1dm like '%%'
and a.gg2dm like '%%'
and a.ckdm>='000' and a.ckdm<='013' and a.qddm='000'
and a.zksl<>0
order by ckmc,a.spdm,a.gg1dm,a.gg2dm在sql里面查是一点问题都没有的。
SQL.Add('and a.spdm like ''%'+edit_spdm.Text+'%''');
没有where ?你有where 呢