如何从数据库中合并的2列中检索数据并显示在下拉列表中?

时间:2019-01-27 06:04:26

标签: c# sql asp.net

我有一张桌子->类-id,日期,时间,备注
在我的asp.net应用程序中,我想在下拉列表中一起显示日期和时间。
注意:时间为字符串格式(即9:00-11:00、12:30-1:00)
我不确定这是否可行。请告诉我。

当前,我仅能显示日期。请参见下面的代码

        con.Open();
        SqlCommand com = new SqlCommand("Select id,Date,Time from class", con);
        com.ExecuteNonQuery();
        DataTable dt = new DataTable();
        SqlDataAdapter dA = new SqlDataAdapter(com);
        dA.Fill(dt);
        dd1.DataSource = dt;
        dd1.DataTextField = "Date"; //want to show date and time
        dd1.DataValueField = "id";
        dd1.DataBind();
        con.Close();

预期结果-“ 12/01/2019 9:00-11:00”

3 个答案:

答案 0 :(得分:0)

尝试下面的代码,现在可以正常工作:

con.Open();
sql = @ "SELECT Date + ' ' + Time AS Session, id, remark FROM class ORDER BY Session ASC;";
SqlCommand com = new SqlCommand(sql, con);
com.ExecuteNonQuery();
DataTable dt = new DataTable();
SqlDataAdapter dA = new SqlDataAdapter(com);
dA.Fill(dt);
dd1.DataSource = dt;
dd1.DataTextField = "Session";
dd1.DataValueField = "id";
dd1.DataBind();
con.Close();

答案 1 :(得分:0)

您正在使用哪个数据库?

在SQL Server中,您可以使用以下查询:

SELECT id, CONVERT(VARCHAR, Date , 3) + ' ' + Time AS Date 
FROM class

其他代码将保持不变。

答案 2 :(得分:0)

假设您使用的是SQL Server,则可以按以下方式修改查询:

final_list = [k]+v for k,v in example_dt.items()]

并将“日期”列用作您的DataTextField