Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 在vb.net中将月总收入放入图表_Mysql_Vb.net - Fatal编程技术网

Mysql 在vb.net中将月总收入放入图表

Mysql 在vb.net中将月总收入放入图表,mysql,vb.net,Mysql,Vb.net,我查询了一年中每个月的总收入。 我是vb.net和MySQL的新手。如果有人知道给出相同结果的较短查询,请联系我们。 我想画一张图表,其中X表示月份,Y表示总收入。 我的问题是: query = "SELECT ( SELECT SUM(Amount_income_table) FROM bacci.income_table where MONTH(Date_income_table) = '1' )as January, ( SELECT SUM(Amount_income_tab


我查询了一年中每个月的总收入。
我是vb.net和MySQL的新手。如果有人知道给出相同结果的较短查询,请联系我们。
我想画一张图表,其中X表示月份,Y表示总收入。
我的问题是:

query = "SELECT  (
SELECT SUM(Amount_income_table)
FROM   bacci.income_table
where  MONTH(Date_income_table) = '1'
)as January,
(
SELECT SUM(Amount_income_table)
FROM   bacci.income_table
where  MONTH(Date_income_table) = '2'
) AS February,
(
SELECT SUM(Amount_income_table)
FROM   bacci.income_table
where  MONTH(Date_income_table) = '3'
)as March,
(
SELECT SUM(Amount_income_table)
FROM   bacci.income_table
where  MONTH(Date_income_table) = '4'
) AS April,
(
SELECT SUM(Amount_income_table)
FROM   bacci.income_table
where  MONTH(Date_income_table) = '5'
)as May,
(
SELECT SUM(Amount_income_table)
FROM   bacci.income_table
where  MONTH(Date_income_table) = '6'
) AS June,
(
SELECT SUM(Amount_income_table)
FROM   bacci.income_table
where  MONTH(Date_income_table) = '7'
)as July,
(
SELECT SUM(Amount_income_table)
FROM   bacci.income_table
where  MONTH(Date_income_table) = '8'
) AS August,
(
SELECT SUM(Amount_income_table)
FROM   bacci.income_table
where  MONTH(Date_income_table) = '9'
)as September,
(
SELECT SUM(Amount_income_table)
FROM   bacci.income_table
where  MONTH(Date_income_table) = '10'
) AS October,
(
SELECT SUM(Amount_income_table)
FROM   bacci.income_table
where  MONTH(Date_income_table) = '11'
)as November,
(
SELECT SUM(Amount_income_table)
FROM   bacci.income_table
where  MONTH(Date_income_table) = '12'
) AS December;"
图表的代码为:

    Comand = New MySqlCommand(query, connection)
            READER = Comand.ExecuteReader
            While READER.Read
                ChartIncomeYear.Series("Incomes").Points.AddXY(READER.GetString("Date_income_table"), READER.GetInt32("Amount_income_table"))

            End While

我使用的是MySQL数据库和Visual Basic 2017。

您可以使用
MONTHNAME
函数直接获取月份和组的名称

SELECT SUM(amt), MONTHNAME(amt_date) 
FROM income_table
GROUP BY MONTHNAME(amt_date);
差不多吧

由于某些原因,fiddle链接不起作用,下面是完整的代码

 CREATE TABLE income_table (amt INT, amt_date DATE);

  INSERT INTO income_table
    VALUES (12500,'2017-01-01');
      INSERT INTO income_table
    VALUES (2500,'2017-01-10');

    INSERT INTO income_table
    VALUES (12500,'2017-02-01');

      INSERT INTO income_table
    VALUES (3700,'2017-02-08');

    INSERT INTO income_table
    VALUES (12500,'2017-03-01');
    INSERT INTO income_table
    VALUES (12500,'2017-04-01');
    INSERT INTO income_table
    VALUES (12500,'2017-05-01');
    INSERT INTO income_table
    VALUES (12500,'2017-06-01');

用小提琴看

您可以使用
MONTHNAME
函数直接获取月份名称和组名称

SELECT SUM(amt), MONTHNAME(amt_date) 
FROM income_table
GROUP BY MONTHNAME(amt_date);
差不多吧

由于某些原因,fiddle链接不起作用,下面是完整的代码

 CREATE TABLE income_table (amt INT, amt_date DATE);

  INSERT INTO income_table
    VALUES (12500,'2017-01-01');
      INSERT INTO income_table
    VALUES (2500,'2017-01-10');

    INSERT INTO income_table
    VALUES (12500,'2017-02-01');

      INSERT INTO income_table
    VALUES (3700,'2017-02-08');

    INSERT INTO income_table
    VALUES (12500,'2017-03-01');
    INSERT INTO income_table
    VALUES (12500,'2017-04-01');
    INSERT INTO income_table
    VALUES (12500,'2017-05-01');
    INSERT INTO income_table
    VALUES (12500,'2017-06-01');

用小提琴看

我投票结束这个问题,因为它要求审查。更适合@Codexer我不知道代码审查,我会把我的问题放进去:)谢谢欢迎,很高兴能帮上忙。我投票结束这个问题,因为它要求审查。更适合@Codexer我不知道代码审查,我会把我的问题放进去:)谢谢欢迎,很高兴能帮上忙。谢谢兄弟,查询工作很有魅力:)谢谢兄弟,查询工作很有魅力:)