【问题标题】:ASP.net:duplicate values from database in chartASP.net:图表中数据库中的重复值
【发布时间】:2016-09-19 23:41:04
【问题描述】:

我在一个使用 asp.net C#(库存管理项目)的网站工作

我有这个数据库:

CREATE TABLE [dbo].[product] (
    [category_id] INT           IDENTITY (1, 1) NOT NULL,
    [company_na]  VARCHAR (50)  NOT NULL,
    [category]    VARCHAR (MAX) NOT NULL,
    [items]       VARCHAR (MAX) NOT NULL,
    [quantity]    VARCHAR (50)  NOT NULL,
    PRIMARY KEY CLUSTERED ([category_id] ASC)
);

我使用此代码显示图表中每个项目数量百分比的类别:

DataTable dt = new DataTable();
            SqlDataAdapter da = new SqlDataAdapter();
            cmd.Connection = con;
            cmd.CommandText = "select category ,quantity from product where company_na = '" + Label5.Text + "'";
            con.Open();
            da.SelectCommand = cmd;
            da.Fill(dt);
            string[] x = new string[dt.Rows.Count];
            int[] y = new int[dt.Rows.Count];
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                x[i] = dt.Rows[i][0].ToString();
                y[i] = Convert.ToInt32(dt.Rows[i][1]);
            }
            Chart1.Series[0].Points.DataBindXY(x, y);
            Chart1.Series[0].IsValueShownAsLabel = true;
            foreach (DataPoint p in Chart1.Series[0].Points)
            {
                p.Label = "#PERCENT";
            }

但是,它显示每个项目的重复类别。 我希望所有类别都没有重复。

【问题讨论】:

  • 我认为你需要GROUP BY来达到这个目的。

标签: c# asp.net database duplicates


【解决方案1】:

您的查询中可能需要SELECT DISTINCT

cmd.CommandText = "select distinct category_id ,quantity from product where company_na = '" + Label5.Text + "'";

【讨论】:

  • 嗨,我试试。同样它显示所有项目。谢谢:)
【解决方案2】:

选择 distinct 不起作用 Trisno,问题是 Moon Light 有多个他需要从 db 获得的字段,而我们并不真正知道另一个字段的行为。无论如何,这就是我要做的:

cmd.CommandText =
"SELECT  c2.field1 ,
        field2
FROM    (SELECT DISTINCT
                field1
         FROM   dbo.TABLE AS C
        ) AS c1
        JOIN dbo.TABLE AS c2 ON c1.field1 = c2.field1'" + Label5.Text + "'";

如果这有帮助,请告诉我;)

【讨论】:

  • 你好,c,c1, c2, field 是什么意思?
  • c, c1, c2 都是对它们声明为的表的引用,因此例如,如果您从您的产品表中进行连接,则可以将其表示为 p,如果您键入类似“select p .category, p.quantity from products p"。在这里查看w3schools.com/sql/sql_join.asp 以获得对 SQL 连接的更好解释。这些变量主要用于 SQL 连接,我希望这是有道理的。
猜你喜欢
  • 1970-01-01
  • 2019-09-17
  • 2012-08-21
  • 2015-01-13
  • 2012-06-02
  • 2018-12-11
  • 1970-01-01
  • 1970-01-01
  • 2021-12-12
相关资源
最近更新 更多