数据库排序(50分)

  • 主题发起人 主题发起人 SBSB174
  • 开始时间 开始时间
S

SBSB174

Unregistered / Unconfirmed
GUEST, unregistred user!
增加了一个计算字段,在程序运行过程中,想对其进行排序,用什么方法。
如果改SQL语句,我可是对这个计算字段排序啊
 
请用SQLServer中的PUBS数据库验证一下
SELECT stor_id, SUM(qty) c
FROM sales
GROUP BY stor_id
ORDER BY c
 
select * from ... order by 计算字段表达式
 
针对上面的源码
order by 2
注释:在select语句中有几个字段,就可以通过任意字段在select语句中的序列号来排序
比如:
select a,b,c,d,e,(a+b+c)*d/c,f from table order by 6 desc 就是按照计算字段
来排序
a,b,c,d,e,(a+b+c)*d/c,f
1 2 3 4 5 6 7
order by n desc 中的n 就是排序的字段,这种排序不受计算字段的影响,也不受多表查询
自引用查询的限制
 
试着在数据集的indexFieldNames设置该计算字段为索引字段,在计算字段计算完后再设。
 
我用的是ADOQuery,没有indexFieldNames。
我是在OnCalcFields事件中增加的计算字段。
比如我要在点击DBGrid的标题时对计算字段进行排序,在OnTitleClick事件中写入
SQL语句好象没有什么反应。
请各位指点!
 
多人接受答案了。
 
后退
顶部