仅有的10分,请高手看看小弟的SQL语句有什么问题?关注……

StarCraftPJF 2006-07-19 11:06:05
请看我的SQL语句:
1、SELECT TruckCostSumView.TheMonth, Max(TruckCostSumView.TheAllFee) AS TheCostFee, (SUM(CASE WHEN TransFeeView.[InComeOrOut] =

'应收' THEN CONVERT(float, TransFeeView.AllFee) ELSE - CONVERT(float, TransFeeView.AllFee) END)) AS 'OtherTruckFee'

from TruckCostSumView

LEFT JOin TransFeeView ON (RIGHT(TruckCostSumView.[TheMonth], 2) = substring(TransFeeView.[BeginDate], 6, 2) AND LEFT

(TruckCostSumView.[TheMonth], 4) = LEFT(TransFeeView.[BeginDate], 4))

GROUP BY TruckCostSumView.[TheMonth]
...全文
134 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
StarCraftPJF 2006-07-19
  • 打赏
  • 举报
回复
自己先顶一下吧………………
StarCraftPJF 2006-07-19
  • 打赏
  • 举报
回复
这两个SQL语句中得到的“OtherTruckFee”竟然是不一样的!!

小弟想了很久也没有找到问题所在,请高手指点一下!!!

如果我想要在第二个SQL中得到的“OtherTruckFee”值和第一个SQL中的相同,第二个SQL语句要怎么修改??

学习,关注……
StarCraftPJF 2006-07-19
  • 打赏
  • 举报
回复
2、SELECT TruckCostSumView.TheMonth, Max(TruckCostSumView.TheAllFee) AS TheCostFee, Sum(CASE WHEN TruckFee.MyTruck = '1' THEN

ConVert(float, TruckFee.AllFee) ELSE 0 END) AS 'MyTruckFee', (SUM(CASE WHEN TransFeeView.[InComeOrOut] = '应收' THEN

CONVERT(float, TransFeeView.AllFee) ELSE - CONVERT(float, TransFeeView.AllFee) END)) AS 'OtherTruckFee'

from TruckCostSumView
LEFT JOin TruckFee ON (RIGHT(TruckCostSumView.[TheMonth], 2) = substring(TruckFee.[BillDate], 6, 2) AND LEFT

(TruckCostSumView.[TheMonth], 4) = LEFT(TruckFee.[BillDate], 4))

LEFT JOin TransFeeView ON (RIGHT(TruckCostSumView.[TheMonth], 2) = substring(TransFeeView.[BeginDate], 6, 2) AND LEFT

(TruckCostSumView.[TheMonth], 4) = LEFT(TransFeeView.[BeginDate], 4))

GROUP BY TruckCostSumView.[TheMonth]
baggio328 2006-07-19
  • 打赏
  • 举报
回复
第一个程序是两个表外联
第二个是三个表外联吧
我觉得区别可能是这样
看了看 as OtherTruckFee
似乎没什么不同

684

社区成员

发帖
与我相关
我的任务
社区描述
智能路由器通常具有独立的操作系统,包括OpenWRT、eCos、VxWorks等,可以由用户自行安装各种应用,实现网络和设备的智能化管理。
linuxpython 技术论坛(原bbs)
社区管理员
  • 智能路由器社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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