SQL语句征求答案:这个具有一定的难度,请大侠出谋划策,谢谢!!!!!!!!
如下图,
[解决办法]
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
sqlstr:string;
begin
self.ADOQuery1.Close;
self.ADOQuery1.SQL.Clear;
self.ADOQuery1.SQL.Add('select * from 表1 where 姓名='''+trim(self.edit1.text)+''''); //这里取edit1里面的姓名
self.adoquery1.open; //这个漏了
sqlstr:='';
for i :=2 to self.ADOQuery1.FieldCount do //这里从2开始,第1个字段是姓名忽略了
if self.ADOQuery1.Fields[i].Text='是' then sqlstr:=sqlstr+','+self.ADOQuery1.Fields[i].FieldName;//如果是”是“就加入列表
sqlstr:='select 姓名'+sqlstr+' from 表1 where 姓名='''+self.ADOQuery1.fieldbyname('姓名').AsString+'''';
self.ADOQuery2.Close;
self.ADOQuery2.SQL.Clear;
self.adoquery2.sql.add(sqlstr);
self.adoquery2.open;
end;