以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  SQL的select语句修改  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=73888)

--  作者:阿福
--  发布时间:2015/8/28 14:53:00
--  SQL的select语句修改
代码又出错了,麻烦老师改一下!
cmd.CommandText = "Select YEAR(年) As 年,  sum(收入) as 收入, sum(支出) as 支出 f rom " & _

"(Select 销售_日期 as 年, 销售_金额 as 收入, 0 as 支出 f rom {母猪基本信息} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 销售_日期 as 年, 销售_金额 as 收入, 0  f rom {公猪信息} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 销售_日期 as 年, 销售_金额 as 收入, 0  f rom {肉猪信息} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 日期 as 年, 金额 as 收入, 0  f rom {补贴项目} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 日期 as 年, 金额 as 收入, 0  f rom {其他收入} where [sys_user]=\'" & user.Name & "\' u nion all " & _

"Select 购买_日期 as 年, 0, 购买_金额 as 支出 f rom {母猪基本信息} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 购买_日期 as 年, 0, 购买_金额 as 支出 f rom {公猪信息} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 购买_日期 as 年, 0, 购买_金额 as 支出 f rom {肉猪信息} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 日期 as 年, 0,  饲料量_总金额 as 支出 f rom {饲料采购} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 日期 as 年, 0,  总金额 as 支出  f rom {疫苗采购} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 日期 as 年, 0,  总金额 as 支出  f rom {药品采购} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 日期 as 年, 0,  总金额 as 支出  f rom {易耗品采购} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 日期 as 年, 0,  投保金额 as 支出  f rom {保险费} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 日期 as 年, 0,  金额 as 支出  f rom {水电费} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 日期 as 年, 0,  金额 as 支出  f rom {工资费用} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 日期 as 年, 0,  支出金额 as 支出  f rom {工程折旧费用} where [sys_user]=\'" & user.Name & "\' u nion all " & _
"Select 日期 as 年, 0,  金额 as 支出  f rom {其他支出} where [sys_user]=\'" & user.Name & "\') " & _

"As a group by year(年) order by year(年) "

--  作者:大红袍
--  发布时间:2015/8/28 15:02:00
--  

代码不要这样写啊,比如

 

Select YEAR(年) As 年,  sum(收入) as 收入, sum(支出) as 支出 f rom

 

(Select sys_user, 日期 as 年, 金额 as 收入, 0 as 支出 f rom {其他收入} U nion all

Select sys_user, 购买_日期, 0, 购买_金额 f rom {母猪基本信息})
 
as a where sys_user = \'张三\' group by year(年) order by year(年) 

 


--  作者:有点蓝
--  发布时间:2015/8/28 15:03:00
--  
group by year(年) order by year(年)
改成group by 年 order by 年 试一下

--  作者:Hyphen
--  发布时间:2015/8/28 15:24:00
--  
像楼主这样动不动就union all,数据库表示鸭梨山大。如果是sql server等这种外部源,建议先把这些表建个查询视图来用。
--  作者:阿福
--  发布时间:2015/8/28 15:25:00
--  
还是不知哪里出错了

cmd.CommandText = "Select YEAR(年),  sum(收入) as 收入, sum(支出) as 支出 f rom " & _
"(Select sys_user, 销售_日期 as 年, 销售_金额 as 收入, 0 as 支出 f rom {母猪基本信息} u nion all " & _
"Select sys_user, 销售_日期, 销售_金额, 0  f rom {公猪信息} u nion all " & _
"Select sys_user, 销售_日期, 销售_金额, 0  f rom {肉猪信息} u nion all " & _
"Select sys_user, 日期, 金额, 0  f rom {补贴项目}  u nion all " & _
"Select sys_user, 日期, 金额, 0  f rom {其他收入}  u nion all " & _

"Select sys_user, 购买_日期, 0, 购买_金额 f rom {母猪基本信息} u nion all " & _
"Select sys_user, 购买_日期, 0, 购买_金额 f rom {公猪信息} u nion all " & _
"Select sys_user, 购买_日期, 0, 购买_金额 f rom {肉猪信息} u nion all " & _
"Select sys_user, 日期, 0,  饲料量_总金额 f rom {饲料采购} u nion all " & _
"Select sys_user, 日期, 0,  总金额  f rom {疫苗采购}  u nion all " & _
"Select sys_user, 日期, 0,  总金额  f rom {药品采购}  u nion all " & _
"Select sys_user, 日期, 0,  总金额  f rom {易耗品采购}  u nion all " & _
"Select sys_user, 日期, 0,  投保金额  f rom {保险费} u nion all " & _
"Select sys_user, 日期, 0,  金额  f rom {水电费}  u nion all " & _
"Select sys_user, 日期, 0,  金额  f rom {工资费用}  u nion all " & _
"Select sys_user, 日期, 0,  支出金额  f rom {工程折旧费用} u nion all " & _
"Select sys_user, 日期, 0,  金额  f rom {其他支出} ) " & _

"As a where [sys_user] =\'" & user.Name & "\'  group by year(年) order by year(年) "



--  作者:大红袍
--  发布时间:2015/8/28 15:34:00
--  
 "Select YEAR(年),  sum(收入) as 收入, sum(支出) as 支出 f rom " _
 & "(Select sys_user, 销售_日期 as 年, 销售_金额 as 收入, 0 as 支出 f rom {母猪基本信息} u nion all " _
 & "Select sys_user, 销售_日期, 销售_金额, 0  f rom {公猪信息} u nion all " _
 & "Select sys_user, 销售_日期, 销售_金额, 0  f rom {肉猪信息} u nion all " _
 & "Select sys_user, 日期, 金额, 0  f rom {补贴项目}  u nion all " _
 & "Select sys_user, 日期, 金额, 0  f rom {其他收入}  u nion all " _
 & "Select sys_user, 购买_日期, 0, 购买_金额 f rom {母猪基本信息} u nion all " _
 & "Select sys_user, 购买_日期, 0, 购买_金额 f rom {公猪信息} u nion all " _
 & "Select sys_user, 购买_日期, 0, 购买_金额 f rom {肉猪信息} u nion all " _
 & "Select sys_user, 日期, 0,  饲料量_总金额 f rom {饲料采购} u nion all " _
 & "Select sys_user, 日期, 0,  总金额  f rom {疫苗采购}  u nion all " _
 & "Select sys_user, 日期, 0,  总金额  f rom {药品采购}  u nion all " _
 & "Select sys_user, 日期, 0,  总金额  f rom {易耗品采购}  u nion all " _
 & "Select sys_user, 日期, 0,  投保金额  f rom {保险费} u nion all " _
 & "Select sys_user, 日期, 0,  金额  f rom {水电费}  u nion all " _
 & "Select sys_user, 日期, 0,  金额  f rom {工资费用}  u nion all " _
 & "Select sys_user, 日期, 0,  支出金额  f rom {工程折旧费用} u nion all " _
 & "Select sys_user, 日期, 0,  金额  f rom {其他支出} ) " _
 & "As a where [sys_user] =\'" & user.Name & "\'  group by year(年) order by year(年) "

--  作者:阿福
--  发布时间:2015/8/28 15:44:00
--  
大红袍老师,为什么 “ & ” 要放在行首才起作用,不是都放在行尾?


--  作者:大红袍
--  发布时间:2015/8/28 15:58:00
--  

 

[此贴子已经被作者于2015/8/28 15:58:15编辑过]

--  作者:大红袍
--  发布时间:2015/8/28 16:01:00
--  

也行,但不能有空行

 

"Select YEAR(年),  sum(收入) as 收入, sum(支出) as 支出 f rom " & _
"(Select sys_user, 销售_日期 as 年, 销售_金额 as 收入, 0 as 支出 f rom {母猪基本信息} u nion all " & _
"Select sys_user, 销售_日期, 销售_金额, 0  f rom {公猪信息} u nion all " & _
"Select sys_user, 销售_日期, 销售_金额, 0  f rom {肉猪信息} u nion all " & _
"Select sys_user, 日期, 金额, 0  f rom {补贴项目}  u nion all " & _
"Select sys_user, 日期, 金额, 0  f rom {其他收入}  u nion all " & _
"Select sys_user, 购买_日期, 0, 购买_金额 f rom {母猪基本信息} u nion all " & _
"Select sys_user, 购买_日期, 0, 购买_金额 f rom {公猪信息} u nion all " & _
"Select sys_user, 购买_日期, 0, 购买_金额 f rom {肉猪信息} u nion all " & _
"Select sys_user, 日期, 0,  饲料量_总金额 f rom {饲料采购} u nion all " & _
"Select sys_user, 日期, 0,  总金额  f rom {疫苗采购}  u nion all " & _
"Select sys_user, 日期, 0,  总金额  f rom {药品采购}  u nion all " & _
"Select sys_user, 日期, 0,  总金额  f rom {易耗品采购}  u nion all " & _
"Select sys_user, 日期, 0,  投保金额  f rom {保险费} u nion all " & _
"Select sys_user, 日期, 0,  金额  f rom {水电费}  u nion all " & _
"Select sys_user, 日期, 0,  金额  f rom {工资费用}  u nion all " & _
"Select sys_user, 日期, 0,  支出金额  f rom {工程折旧费用} u nion all " & _
"Select sys_user, 日期, 0,  金额  f rom {其他支出} ) " & _
"As a where [sys_user] =\'" & user.Name & "\'  group by year(年) order by year(年) "

 


--  作者:阿福
--  发布时间:2015/8/28 16:07:00
--  
原来是这样,谢谢大红袍老师!