【问题标题】:multiplying modified colums to form new column将修改后的列相乘以形成新列
【发布时间】:2016-04-29 17:27:39
【问题描述】:

我想要这样的查询:

select tp.package_rate, sum(sell) as sold_quantity , select(tp.package_rate * sold_quantity ) as sell_amount from tbl_ticket_package tp where tp.event_id=1001

这里是在做乘法时系统触发错误

sold_quantity is invalid column 

另一个问题是,在乘法中,我想使用通过 tp.package_rate 的选择查询获得的 package_rate,但它与表的所有 package_rate 相乘,但我只想要特定的 package_rate,它是选择查询的输出

你有什么建议?我想在 gridview 中绑定这个查询。有没有办法使用 ASP.net gridview 来做到这一点?

【问题讨论】:

    标签: sql asp.net gridview


    【解决方案1】:

    您的问题是您在这里指的是 sold_quantity :

    select(tp.package_rate * sold_quantity ) 
    

    此时无法识别别名。您必须将其替换为 sum(sales)。您还必须按 tp.package_rate 分组。

    理想情况下,您的查询应该是这样的:

        select tp.package_rate, sum(sell) as sold_quantity , 
    (tp.package_rate * sum(sell) ) as sell_amount from tbl_ticket_package tp 
    where tp.event_id=1001 group by tp.package_rate;
    

    我猜 tp.package_rate 对于给定的 event_id 是唯一的,来自您问题的后半部分。如果不是这样,那你写的 sql 就没有意义了。

    【讨论】:

    • 谢谢。问题解决了 。实际上没有问题。我试图不使用别名并在乘法中再次写 sum(sell)。实际上,我正在使用子查询进行许多计算和检索数据以计算 sum(sell),问题出在乘法上,当找到 sum(sell) 时,我在子查询中给出了特定的包 ID,所以乘法发生在售出的票的输出上.表示tp.ticket_package_rate没有问题。现在很好。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-11-15
    • 2021-08-07
    • 2016-04-12
    • 2013-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多