C# 查询按年度排序并添加列值

C# 查询按年度排序并添加列值,c#,C#,我正在做一个C#项目,我有以下场景: 第一个是月份,第二个是年份,旁边有一个按钮。我还有一个表,其中包含两列,分别名为date(datatype small datetime)和price(varchar) 我已经生成了这个,但它的错误是“无效列名'yourMonthSelected'和” 列名称“yourYearSelected”无效。 我的方法正确吗?我认为您的查询文本是错误的。您试图在查询中添加yourMonthSelected和yourYearSelected作为参数,但您没有在查询中使

我正在做一个C#项目,我有以下场景:

第一个是月份,第二个是年份,旁边有一个按钮。我还有一个表,其中包含两列,分别名为date(datatype small datetime)和price(varchar)

我已经生成了这个,但它的错误是“无效列名'yourMonthSelected'和” 列名称“yourYearSelected”无效。
我的方法正确吗?

我认为您的查询文本是错误的。您试图在查询中添加
yourMonthSelected
yourYearSelected
作为参数,但您没有在查询中使用
@yourMonthSelected
@yourYearSelected
指定它们

试试这个查询

string intero = "select sum(no_of_mobiles) from table2 where datepart(mm,given_schedule)= @yourMonthSelected and datepart(yy,given_schedule)= @yourYearSelected";
看看这个方法,看看你们如何使用它

SqlDataReader rdr = cmd.ExecuteReader();
而不是

SqlDataReader rdr;
rdr = cmd.ExecuteReader();
在while子句中,您应该使用
rdr[0]
而不是
rdr
,因为
rdr
是一个
数组

while (rdr.Read())
{
     label2.Text = rdr[0].ToString();
}

是的,先生,非常感谢您对我的帮助,在每个案例中使用@yourMonthSelected、@yourYearSelected“@”是否是强制的?根据数组rdr[0]为什么它是0??@shariq_khan
rdr[0]
表示sql结果的第一行。因为sql查询只返回一个值/行(手机数量的总和)没有问题。但是请记住,
rdr
是一个
数组
。先生,我得到了您告诉我的信息。如果我想按月份和年份添加总行数和计数行数,您能帮我查询吗。我应该在该查询中进行编辑。是的,先生,这很有帮助