我有一个sql表,其中包含客户详细信息和他们签入的日期。我使用图表控件自动绘制图表,但x轴具有他们签入的实际特定日期,例如'09 / 11 / 17' 。我希望它显示他们登记的月份。为此,我考虑在customer表中创建另一列以显示他们签入的月份,但这似乎效率低下。
有没有更好的方法来做到这一点?
我在图表页面中的代码:
public void load()
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["DataBconnection"].ConnectionString);
DataTable dtbl = new DataTable();
using (con)
{
con.Open();
SqlDataAdapter sqlDa = new SqlDataAdapter("SELECT Check-In, Count(ID) AS ID FROM Customer GROUP BY Check-In ", con);
sqlDa.Fill(dtbl);
Chart1.DataSource = dtbl;
Chart1.Series["Series1"].XValueMember = "Check-In";
Chart1.Series["Series1"].YValueMembers = "ID";
}
我也是c#图表控件的新手,所以如果有人能为我提供资源,我会非常感激,我可以从中学到更多!:)
我建议在SQL语句本身中执行此操作,分别存储完整日期和月份会有点多余。尝试将您的查询更改为:
"SELECT MONTH(Check-In), Count(ID) AS ID FROM Customer GROUP BY MONTH(Check-In)"
请注意,这假定日期来自同一年