
从SQL数据库查询到的结果显示在DBGrid中的结果排序
列cbsj的排序反了我想从最早的日期往下排序,请问怎么做呢?ADOQuery1.SQL.Clear;ADOQuery1.Parameters.Clear;ADOQuery...
列 cbsj 的排序反了 我想从 最早的日期往下排序,请问怎么做呢?
ADOQuery1.SQL.Clear;
ADOQuery1.Parameters.Clear;
ADOQuery1.SQL.Add('Select row_number() over (order by s.inde desc) as RecNO,* from');
ADOQuery1.SQL.Add(strB);
ADOQuery1.SQL.Add('where (s.zf_sj is null) and (s.zf_sfrq is null) and s.yhno= ');
ADOQuery1.SQL.Add(Edit1.Text);
ADOQuery1.Parameters;
ADOQuery1.open;
Button1.Enabled := True;
end; 展开
ADOQuery1.SQL.Clear;
ADOQuery1.Parameters.Clear;
ADOQuery1.SQL.Add('Select row_number() over (order by s.inde desc) as RecNO,* from');
ADOQuery1.SQL.Add(strB);
ADOQuery1.SQL.Add('where (s.zf_sj is null) and (s.zf_sfrq is null) and s.yhno= ');
ADOQuery1.SQL.Add(Edit1.Text);
ADOQuery1.Parameters;
ADOQuery1.open;
Button1.Enabled := True;
end; 展开
1个回答
展开全部
需要用sql语句来处理。
比如原表数据如下:
现在要按出生日期从早到晚排列,并给出序号:
sql语句如下:
select t.* from
(select t1.*,(select count(*)+1 from 表2 as t2 where t2.出生日期<t1.出生日期) as 序号 from 表2 as t1) as t
order by 序号;
结果
比如原表数据如下:
现在要按出生日期从早到晚排列,并给出序号:
sql语句如下:
select t.* from
(select t1.*,(select count(*)+1 from 表2 as t2 where t2.出生日期<t1.出生日期) as 序号 from 表2 as t1) as t
order by 序号;
结果
追问
我以上的问题,‘order by cbsj desc’应该放在哪个位置,不明白啊
老师!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |