当前位置:编程学习 > Delphi >>

delphi dbgrid 排序

朋友,高手们:如何能够让dbgrid按条件自动显示和排列数据?例如:在ACCESS数据库表1里有这些数据: 日期 时刻 课程 教师-----------------------------------------------------2月1日 上午 大学语文 张无忌4月3日 下午 高等数学 张三丰5月7日 晚上 大学生物 刘德华3月2日 上午 大学物理 郭富城3月6日 上午 大学语文 张无忌================================================如何能够按‘时刻’上午-下午-晚上 这个顺序排列显示数据??adoquery1.SQL.Text:='Select * from b1 order by '(怎么写代码?)如何能够只显示3月份数据?if adotable1.FieldByName('日期').AsString:='3月%'then(接下来怎么写代码?)请详细说明。
答案:日期        时刻       课程                     教师        
2月1日   上午        大学语文             张无忌
4月3日   下午        高等数学             张三丰
5月7日   晚上        大学生物             刘德华
3月2日   上午        大学物理             郭富城
3月6日   上午        大学语文             张无忌
//我是学oracle 的  不知道下面这个语句对不对
select  b1.*,decode(b1.时刻,'上午',0,'下午',1,‘晚上',2,3)  s  from   b1  order by s asc;

只能显示3月的数据可以这样做:
begin
adotable1.filter := '日期 := 3月%'  ;
adotable1.filtered := true ; 
...
//这样adotable1里面就是3月份的数据了,
//如果下次还想用adotable1里面的所有数据,可以这样做:     
// adotable1.filter := '日期 := '+'' ; 
//  adotable1.filtered := true;
end;
其他:1、给时刻建立一个外部索引表;
2、截取日期中的月份作为过滤条件; 排序这些事交给控件做
如dbgridEH 

上一个:delphi 删除临时表中内容
下一个:delphi 中UDP 通讯问题。请高手指教!急!!!

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,