四时宝库

程序员的知识宝库

SQL把前十大客户填到指定位置(sql把前十大客户填到指定位置里)

单位需要填报前十大客户,如下图

数据来源是数据库的数据,如下图:

那么如何能让SQL语言填写到指定位置,如下面的结果:

思路:在报表的每个格子里写SQL语句,where条件依次指定为1 2 3 4 5……

用到排位次SQL,如下:

select A.客户,A.编号,A.交易金额,count(*) as 名次 from [数据表$] A

inner join

(select 客户,编号,客户 from [数据表$]) B

on

(A.交易金额<B.交易金额 or (A.交易金额=B.交易金额 and A.编号<=B.编号))

上面排位次SQL中A与B的实有字段必须相同,即count前面的字段必须一样。

然后在这个排位次的SQL外面再套一层SQL,如下:

select C.客户

from

( 排位次SQL ) C

where C.名次=1

这样就取到位次为1得客户名称,依次类推,写第二名的,第三名的。如下图:

整体效果如下:

SQL语句写好了,就运行程序执行SQL查询,SQL就按照指定位置填写结果,如下图:

SQL是数据查询处理的优秀语言。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接