C# 如何计算数据库中具有3个不同值的列中的数据,并将其显示在图形中?

C# 如何计算数据库中具有3个不同值的列中的数据,并将其显示在图形中?,c#,asp.net,mysql,graph,series,C#,Asp.net,Mysql,Graph,Series,目前我只能为1个未付款的系列生成一个图形类型列 在mySQL中,我的列名status总是这三个值中的任意一个:Unpaid/Paid/Finish 如何计算每个状态(未付款/已付款/完成)的客户数量并将其添加到图表中 Default.aspx <asp:Chart ID="Chart1" runat="server" Palette="EarthTones"> <Legends> <asp:Legend Ali

目前我只能为1个未付款的系列生成一个图形类型列

在mySQL中,我的列名status总是这三个值中的任意一个:Unpaid/Paid/Finish

如何计算每个状态(未付款/已付款/完成)的客户数量并将其添加到图表中

Default.aspx

    <asp:Chart ID="Chart1" runat="server" Palette="EarthTones">
            <Legends>
            <asp:Legend Alignment="Center" Docking="Bottom" IsTextAutoFit="False" Name="Default" LegendStyle="Row" />
            </Legends>
            <series>
                <asp:Series Name="Unpaid" XValueMember="MONTH(paymentDate)" YValueMembers="COUNT(status)"  ShadowColor="#FF9900"></asp:Series>
            </series>
            <chartareas>
                <asp:ChartArea Name="ChartArea1">
                </asp:ChartArea>
            </chartareas>
        </asp:Chart>
有人能帮帮我吗


提前谢谢你。非常感谢你的帮助

SUM
替换
COUNT
,如下所示:

SELECT
    SUM(CASE WHEN status='unpaid' THEN 1 ELSE 0 END) as Unpaid
,   SUM(CASE WHEN status='paid' THEN 1 ELSE 0 END) as Paid
,   SUM(CASE WHEN status='finished' THEN 1 ELSE 0 END) as Finished
FROM monthlytracker
WHERE ... -- the filter condition

这将为每个付款状态生成三列计数。

此查询仅选择状态为“向上”的行,因此所有总和将始终为0
SELECT
    SUM(CASE WHEN status='unpaid' THEN 1 ELSE 0 END) as Unpaid
,   SUM(CASE WHEN status='paid' THEN 1 ELSE 0 END) as Paid
,   SUM(CASE WHEN status='finished' THEN 1 ELSE 0 END) as Finished
FROM monthlytracker
WHERE ... -- the filter condition