以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何转换成foxtable可执行的语句  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=172207)

--  作者:lihe60
--  发布时间:2021/9/29 13:44:00
--  如何转换成foxtable可执行的语句
set @sql = \'sel\\ect name,\'
sel\\ect @sql = @sql + \'sum(case subject when \'\'\'+subject+\'\'\'
then source else 0 end) as \'\'\'+subject+\'\'\',\'
from (sele\\ct distinct subject from test) as a
sel\\ect @sql = left(@sql,len(@sql)-1) + \' from test group by name\'


--  作者:lihe60
--  发布时间:2021/9/29 13:45:00
--  
就是动态交叉统计
--  作者:有点蓝
--  发布时间:2021/9/29 13:49:00
--  
放到存储过程里调用
--  作者:lihe60
--  发布时间:2021/9/29 13:59:00
--  
不会修改
--  作者:有点蓝
--  发布时间:2021/9/29 14:10:00
--  
https://www.baidu.com/baidu?word=%E5%88%9B%E5%BB%BA%E5%AD%98%E5%82%A8%E8%BF%87%E7%A8%8B
--  作者:lihe60
--  发布时间:2021/9/29 14:43:00
--  
SQL 二维交叉报表 分类统计(行列转换)_CoffeeShop的专栏-CSDN博客

这个交叉统计有人会转换到猜中执行吗?

--  作者:lihe60
--  发布时间:2021/9/29 14:44:00
--  
 declare   @sql   varchar ( 8000 )   
 set   @sql   =   \' sel\\ect name,count(name) as 总,sum(mark) as 总分 \'   
 sele\\ct   @sql   =   @sql   +   \' ,count(case class when  \'\'\' + class + \'\'\'  then name end)[ \' + class + \' 总数] ,sum(case class when  \'\'\' + class + \'\'\'  then mark end) [ \' + class + \' ] \'   
 from  ( se\\lect   distinct  class  from   temp )  as  s   
  
 sel\\ect   @sql   =   @sql + \'  from temp group by name \'   


--  作者:lihe60
--  发布时间:2021/9/29 14:44:00
--  
7楼的语句不会转换
--  作者:有点蓝
--  发布时间:2021/9/29 14:46:00
--  
把DECLARE   @sql   varchar ( 2000 )   开始至后面的的sql都放到存储过程里执行即可
--  作者:lihe60
--  发布时间:2021/9/29 14:54:00
--  
谢谢提醒,关键是不知道怎么写