求助:先查询 然后对查询结果行转列?

wgwgcd 2018-04-12 09:00:56
先对表查询 在对其中一行静态转列 单独都好着 和到一起就报错
SELECT
"年月",
"财年",
"科目名称",
"一级编码",
"一级科目",
"部门名称",
SUM ( CASE WHEN "科目编码" = '50010000' THEN "金额" ELSE NULL END ) AS "111",
SUM ( CASE WHEN "科目编码" = '54010000' THEN "金额" ELSE NULL END ) AS "112",
"性质"
FOR
( SELECT
"public"."数据"."年月",
"public"."数据"."科目编码",
"public"."数据"."科目名称",
"public"."数据"."一级编码",
"public"."数据"."一级科目",
SUM ( "public"."数据"."借方" ) AS "金额",
"public"."数据"."部门名称",
"public"."数据"."财年",
"public"."数据"."性质"
FROM
"public"."数据"
WHERE
"public"."数据"."一级编码" > 5000
GROUP BY
"public"."数据"."年月",
"public"."数据"."科目编码",
"public"."数据"."部门名称",
"public"."数据"."一级编码",
"public"."数据"."科目名称",
"public"."数据"."一级科目",
"public"."数据"."财年",
"public"."数据"."性质") AS gg
GROUP BY
"年月",
"科目名称",
"一级编码",
"一级科目",
"性质",
"财年"
错误提示如下:
> ERROR: syntax error at or near "("
LINE 12: ( SELECT
^

是在navivat for postgresql中
...全文
456 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
wgwgcd 2018-04-13
  • 打赏
  • 举报
回复
谢谢您了 老师 我重新检查了下 好了
繁花尽流年 2018-04-13
  • 打赏
  • 举报
回复
你这列是啥,列名都不存在
wgwgcd 2018-04-13
  • 打赏
  • 举报
回复
ERROR: column "540100" does not exist LINE 2: "540100", 加了 还是不行啊 老师 我是菜接触了几天 实在是不好意思 打搅您了
繁花尽流年 2018-04-13
  • 打赏
  • 举报
回复
引用 7 楼 wgwgcd 的回复:
谢谢 楼上老师 请问 完行转列后,对多个字段求和 形成新字段 怎样写? 如:”111”+“112” as c 但是报错
引用
select "540100" "销售"+"成本" as "ggg" from ( SELECT "public"."数据"."年月", "public"."数据"."财年", "public"."数据"."财月", "public"."数据"."部门名称", "public"."数据"."性质", SUM(CASE WHEN "public"."数据"."科目编码" = '50000100' THEN "public"."数据"."借方" ELSE NULL END) AS "500001", Sum(CASE WHEN "public"."数据"."科目编码" = '50010000' THEN "public"."数据"."借方" ELSE NULL END) AS "销售", Sum(CASE WHEN "public"."数据"."科目编码" = '54010000' THEN "public"."数据"."借方" ELSE NULL END) AS "成本", Sum(CASE WHEN "public"."数据"."科目编码" = '20000000' THEN "public"."数据"."借方" ELSE NULL END) AS "200000", Sum(CASE WHEN "public"."数据"."科目编码" = '54030000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56010000' THEN "public"."数据"."借方" ELSE NULL END) AS "560100", Sum(CASE WHEN "public"."数据"."科目编码" = '56010100' THEN "public"."数据"."借方" ELSE NULL END) AS "560101", Sum(CASE WHEN "public"."数据"."科目编码" = '56010200' THEN "public"."数据"."借方" ELSE NULL END) AS "560102", Sum(CASE WHEN "public"."数据"."科目编码" = '56010300' THEN "public"."数据"."借方" ELSE NULL END) AS "560103", Sum(CASE WHEN "public"."数据"."科目编码" = '56010400' THEN "public"."数据"."借方" ELSE NULL END) AS "560104", Sum(CASE WHEN "public"."数据"."科目编码" = '56010500' THEN "public"."数据"."借方" ELSE NULL END) AS "560105", Sum(CASE WHEN "public"."数据"."科目编码" = '56010600' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56010700' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56010800' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56010900' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011300' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011400' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011500' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011600' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011700' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011800' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011900' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012300' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012400' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012500' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012600' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012700' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012800' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012900' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56013000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '30000000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '50510000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '54020000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020300' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020400' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020500' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020600' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020700' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020800' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020900' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021300' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021400' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021500' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021600' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021700' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021800' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021900' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022300' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022400' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022500' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022600' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022700' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022800' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022900' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56023000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56030000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56030100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56030200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56030300' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56030400' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '40000000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '51110000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '53010000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '57110000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '57110100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '57110200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300" FROM "public"."数据" WHERE "public"."数据"."一级编码" > 5000 GROUP BY "public"."数据"."年月", "public"."数据"."财年", "public"."数据"."财月", "public"."数据"."部门名称", "public"."数据"."性质" ) as bv GROUP BY "销售"
ERROR: syntax error at or near "+" LINE 3: "销售"+"成本" as "ggg"
select "540100", "销售"+"成本" as "ggg" 这里少个逗号
wgwgcd 2018-04-13
  • 打赏
  • 举报
回复
谢谢 楼上老师 请问 完行转列后,对多个字段求和 形成新字段 怎样写? 如:”111”+“112” as c 但是报错
引用
select "540100" "销售"+"成本" as "ggg" from ( SELECT "public"."数据"."年月", "public"."数据"."财年", "public"."数据"."财月", "public"."数据"."部门名称", "public"."数据"."性质", SUM(CASE WHEN "public"."数据"."科目编码" = '50000100' THEN "public"."数据"."借方" ELSE NULL END) AS "500001", Sum(CASE WHEN "public"."数据"."科目编码" = '50010000' THEN "public"."数据"."借方" ELSE NULL END) AS "销售", Sum(CASE WHEN "public"."数据"."科目编码" = '54010000' THEN "public"."数据"."借方" ELSE NULL END) AS "成本", Sum(CASE WHEN "public"."数据"."科目编码" = '20000000' THEN "public"."数据"."借方" ELSE NULL END) AS "200000", Sum(CASE WHEN "public"."数据"."科目编码" = '54030000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56010000' THEN "public"."数据"."借方" ELSE NULL END) AS "560100", Sum(CASE WHEN "public"."数据"."科目编码" = '56010100' THEN "public"."数据"."借方" ELSE NULL END) AS "560101", Sum(CASE WHEN "public"."数据"."科目编码" = '56010200' THEN "public"."数据"."借方" ELSE NULL END) AS "560102", Sum(CASE WHEN "public"."数据"."科目编码" = '56010300' THEN "public"."数据"."借方" ELSE NULL END) AS "560103", Sum(CASE WHEN "public"."数据"."科目编码" = '56010400' THEN "public"."数据"."借方" ELSE NULL END) AS "560104", Sum(CASE WHEN "public"."数据"."科目编码" = '56010500' THEN "public"."数据"."借方" ELSE NULL END) AS "560105", Sum(CASE WHEN "public"."数据"."科目编码" = '56010600' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56010700' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56010800' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56010900' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011300' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011400' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011500' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011600' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011700' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011800' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56011900' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012300' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012400' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012500' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012600' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012700' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012800' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56012900' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56013000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '30000000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '50510000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '54020000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020300' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020400' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020500' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020600' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020700' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020800' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56020900' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021300' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021400' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021500' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021600' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021700' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021800' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56021900' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022300' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022400' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022500' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022600' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022700' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022800' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56022900' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56023000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56030000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56030100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56030200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56030300' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '56030400' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '40000000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '51110000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '53010000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '57110000' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '57110100' THEN "public"."数据"."借方" ELSE NULL END) AS "540300", Sum(CASE WHEN "public"."数据"."科目编码" = '57110200' THEN "public"."数据"."借方" ELSE NULL END) AS "540300" FROM "public"."数据" WHERE "public"."数据"."一级编码" > 5000 GROUP BY "public"."数据"."年月", "public"."数据"."财年", "public"."数据"."财月", "public"."数据"."部门名称", "public"."数据"."性质" ) as bv GROUP BY "销售"
ERROR: syntax error at or near "+" LINE 3: "销售"+"成本" as "ggg"
深度格式 2018-04-13
  • 打赏
  • 举报
回复
引用 5 楼 wgwgcd 的回复:
楼上老师 换成动态的行转列 怎么写?
动态的行转列,需要用到动态的sql,可以用 for xml path(‘’)获取行(将要转列)
wgwgcd 2018-04-13
  • 打赏
  • 举报
回复
楼上老师 换成动态的行转列 怎么写?
wgwgcd 2018-04-13
  • 打赏
  • 举报
回复
谢谢 楼上老师 请问 完行转列后,对多个字段求和 形成新字段 怎样写? 如:”111”+“112” as c
wgwgcd 2018-04-12
  • 打赏
  • 举报
回复
楼上 老师: 谢谢 能否说说下 我是哪里错了 我是新手
中国风 2018-04-12
  • 打赏
  • 举报
回复
用以下语句测测 e.g.
SELECT
        `年月`,
`财年`,
`科目名称`,
`一级编码`,
`一级科目`,
`部门名称`,
SUM(CASE WHEN `科目编码` = '50010000' THEN `金额` ELSE NULL END ) AS '111',
SUM ( CASE WHEN `科目编码` = '54010000' THEN `金额` ELSE NULL END ) AS '112',
`性质` 
	from 
( SELECT 
        `public`.`数据`.`年月`,	
        `public`.`数据`.`科目编码`,
`public`.`数据`.`科目名称`,
`public`.`数据`.`一级编码`,      
        `public`.`数据`.`一级科目`,
 	SUM ( `public`.`数据`.`借方` ) AS `金额`,
`public`.`数据`.`部门名称`,
`public`.`数据`.`财年`,
`public`.`数据`.`性质` 
       FROM
 	`public`.`数据`     
      WHERE	
        `public`.`数据`.`一级编码` > 5000    
     GROUP BY	
        `public`.`数据`.`年月`,
`public`.`数据`.`科目编码`,
`public`.`数据`.`部门名称`,
`public`.`数据`.`一级编码`,
`public`.`数据`.`科目名称`,
`public`.`数据`.`一级科目`,
`public`.`数据`.`财年`,
`public`.`数据`.`性质`) AS gg   
GROUP BY
 `年月`,	
        `科目名称`,
 `一级编码`,	
         `一级科目`,
 `性质`,
 `财年`
二月十六 2018-04-12
  • 打赏
  • 举报
回复
SUM ( CASE WHEN "科目编码" = '54010000' THEN "金额" ELSE NULL END ) AS "112", "性质" FOR ( SELECT "public"."数据"."年月", 应该是from
在项目开发过程中,应该按要求编写好十三种文档,文档编制要求具有针对性、精确性、清晰性、完整性、灵活性、可追溯性。   ◇ 可行性分析报告:说明该软件开发项目的实现在技术上、经济上和社会因素上的可行性,评述为了合理地达到开发目标可供选择的各种可能实施方案,说明并论证所选定实施方案的理由。   ◇ 项目开发计划:为软件项目实施方案制订出具体计划,应该包括各部分工作的负责人员、开发的进度、开发经费的预算、所需的硬件及软件资源等。   ◇ 软件需求说明书(软件规格说明书):对所开发软件的功能、性能、用户界面及运行环境等作出详细的说明。它是在用户与开发人员双方对软件需求取得共同理解并达成协议的条件下编写的,也是实施开发工作的基础。该说明书应给出数据逻辑和数据采集的各项要求,为生成和维护系统数据文件做好准备。   ◇ 概要设计说明书:该说明书是概要实际阶段的工作成果,它应说明功能分配、模块划分、程序的总体结构、输入输出以及接口设计、运行设计、数据结构设计和出错处理设计等,为详细设计提供基础。   ◇ 详细设计说明书:着重描述每一模块是怎样实现的,包括实现算法、逻辑流程等。   ◇ 用户操作手册:本手册详细描述软件的功能、性能和用户界面,使用户对如何使用该软件得到具体的了解,为操作人员提供该软件各种运行情况的有关知识,特别是操作方法的具体细节。   ◇ 测试计划:为做好集成测试和验收测试,需为如何组织测试制订实施计划。计划应包括测试的内容、进度、条件、人员、测试用例的选取原则、测试结果允许的偏差范围等。   ◇ 测试分析报告:测试工作完成以后,应提交测试计划执行情况的说明,对测试结果加以分析,并提出测试的结论意见。   ◇ 开发进度月报:该月报系软件人员按月向管理部门提交的项目进展情况报告,报告应包括进度计划与实际执行情况的比较、阶段成果、遇到的问题和解决的办法以及下个月的打算等。   ◇ 项目开发总结报告:软件项目开发完成以后,应与项目实施计划对照,总结实际执行的情况,如进度、成果、资源利用、成本和投入的人力,此外,还需对开发工作做出评价,总结出经验和教训。   ◇ 软件维护手册:主要包括软件系统说明、程序模块说明、操作环境、支持软件的说明、维护过程的说明,便于软件的维护。   ◇ 软件问题报告:指出软件问题的登记情况,如日期、发现人、状态、问题所属模块等,为软件修改提供准备文档。   ◇ 软件修改报告:软件产品投入运行以后,发现了需对其进行修正、更改等问题,应将存在的问题、修改的考虑以及修改的影响作出详细的描述,提交审批。 可行性分析报告 1 引言 1.1 编写目的:阐明编写可行性研究报告的目的,提出读者对象。 1.2 项目背景:应包括   ● 所建议开发软件的名称   ● 项目的任务提出者、开发者、用户及实现软件的单位   ● 项目与其他软件或其他系统的关系。 1.3 定义:列出文档中用到的专门术语的定义和缩写词的原文。 1.4 参考资料:列出有关资料的作者、标题、编号、发表日期、出版单位或资料来源,可包括   ● 项目经核准的计划任务书、合同或上级机关的批文   ● 与项目有关的已发表的资料   ● 文档中所引用的资料,所采用的软件标准或规范 2 可行性研究的前提 2.1 要求:列出并说明建议开发软件的的基本要求,如   ● 功能   ● 性能   ● 输入/输出   ● 基本的数据流程和处理流程   ● 安全与保密要求   ● 与软件相关的其他系统   ● 完成日期 2.2 目标:可包括   ● 人力与设备费用的节省   ● 处理速度的提高   ● 控制精度或生产力的提高   ● 管理信息服务的改进   ● 决策系统的改进   ● 人员工作效率的提高 2.3 条件、假定和限制:可包括   ● 建议开发软件运行的最短寿命   ● 进行显然方案选择比较的期限   ● 经费来源和使用限制   ● 法律和政策方面的限制   ● 硬件、软件、运行环境和开发环境的条件和限制   ● 可利用的信息和资源   ● 建议开发软件投入使用的最迟时间 2.4 可行性研究方法 2.5 决定可行性的主要因素 3 对现有系统的分析 3.1 处理流程和数据流程 3.2 工作负荷 3.3 费用支出:如人力、设备、空间、支持性服务、材料等项开支 3.4 人员:列出所需人员的专业技术类别和数量 3.5 设备 3.6 局限性:说明现有系统存在的问题以及为什么需要开发新的系统 4 所建议技术可行性分析 4.1 对系统的简要描述 4.2 与现有系统比较的优越性 4.3 处理流程和数据流程 4.4 采用建议系统可能带来的影响   ● 对设备

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧