procedure Tform1.DBGrid1TitleClick(Column: TColumn);
Var SubSqlStr,SqlStr:String;
begin
SqlStr := Query1.sql.Text;
if Pos('order by',SqlStr)>0 then
SubSqlStr := LeftStr(SqlStr,Pos('order by',SqlStr)-1)
else
SubSqlStr := SqlStr;
SubSqlStr := SubSqlStr + ' order by ';
SubSqlStr := SubSqlStr + Column.FieldName;
With Query1 do
begin
Close;
Sql.Clear;
Sql.Add(SubSqlStr);
Open;
end;
end;