Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.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
Sql 如何仅在有日期和时间的情况下显示日期?_Sql_Asp.net_Asp.net Mvc 5 - Fatal编程技术网

Sql 如何仅在有日期和时间的情况下显示日期?

Sql 如何仅在有日期和时间的情况下显示日期?,sql,asp.net,asp.net-mvc-5,Sql,Asp.net,Asp.net Mvc 5,在显示视图时。它以日期时间格式显示order\u date和expected\u date 它将订单日期显示为2017年8月19日上午12:00:00,预计日期显示为2017年8月22日上午12:00。在SQL Server中,order\u date和expected\u date都具有date数据类型 我应该怎么做才能只显示日期 <table> @{ int cann = ((DataTable)ViewBag.orderdata).Rows.Count;

在显示视图时。它以日期时间格式显示
order\u date
expected\u date

它将订单日期显示为2017年8月19日上午12:00:00,预计日期显示为2017年8月22日上午12:00。在SQL Server中,
order\u date
expected\u date
都具有
date
数据类型

我应该怎么做才能只显示日期

 <table>
    @{
    int cann = ((DataTable)ViewBag.orderdata).Rows.Count;
    DataTable dt = (DataTable)ViewBag.orderdata;
    for (int i = 0; i < cann; i++)
    {
    <tr>
    <td>@dt.Rows[i]["order_id"]</td>
    <td>@dt.Rows[i]["customer_name"]</td>
    <td>@dt.Rows[i]["Customer_address"]</td>
    <td>@dt.Rows[i]["customer_phone"]</td>
    <td>@dt.Rows[i]["order_date"]</td>
    <td>@dt.Rows[i]["expected_date"]</td>
    <td>@dt.Rows[i]["total_amount"]</td>
    <td>@dt.Rows[i]["advance_amount"]</td>
    <td>@dt.Rows[i]["due_amount"]</td>
    <td><a href="/NewOrder/EditOrder?id=@dt.Rows[i]["order_id"]" 
    class="glyphicon glyphicon-wrench"></a>|<a href="/NewOrder/DeleteOrder?
    id=@dt.Rows[i]["order_id"]" class="glyphicon glyphicon-trash"></a>|<a 
    href="/NewOrder/DetailsData?id=@dt.Rows[i]["order_id"]" class="glyphicon 
    glyphicon-dashboard"></a></td>

    </tr>
    }
    }
    </table>
Sql查询:

 public DataTable ViewOrder()
    {
        string sql = "select * from ProductOrder";
        con.Open();
        SqlCommand cmd = new SqlCommand(sql, con);
        SqlDataAdapter view = new SqlDataAdapter(cmd);
        DataTable dt = new DataTable();
        view.Fill(dt);
        con.Close();
        return dt;
    }

哥们,首先,在视图中暴露你的id不是一个好的做法,请阅读分层架构。阅读有关数据层职责的信息。 但你问题的答案是

@DateTime.Parse(dt.Rows[i]["order_date"]).ToString("yy/MM/dd");

哥们,首先,在视图中暴露你的id不是一个好的做法,请阅读分层架构。阅读有关数据层职责的信息。 但你问题的答案是

@DateTime.Parse(dt.Rows[i]["order_date"]).ToString("yy/MM/dd");

您可以使用
CAST
函数将日期时间转换为日期,如下所示:

sql = "select order_id, customer_name, Customer_address, customer_phone,
CAST(order_date as date) as order_date, CAST(expected_date as date) as expected_date,
total_amount, advance_amount, due_amount from ProductOrder"

您可以使用
CAST
函数将日期时间转换为日期,如下所示:

sql = "select order_id, customer_name, Customer_address, customer_phone,
CAST(order_date as date) as order_date, CAST(expected_date as date) as expected_date,
total_amount, advance_amount, due_amount from ProductOrder"
SQL Server:

select CONVERT(VARCHAR(12), expected_date, 103) AS expected_date,  CONVERT(VARCHAR(12), order_date, 103) AS order_date from ProductOrder
SQL Server:

select CONVERT(VARCHAR(12), expected_date, 103) AS expected_date,  CONVERT(VARCHAR(12), order_date, 103) AS order_date from ProductOrder

@dt.Rows[i][“order\u date”].date.ToString(“d”)

@dt.Rows[i][“order\u date”].date.ToString(“d”)

为什么不在SQL中使用Convert(日期,“YourDateColumn”)。如果您想要特定格式,例如dd/MM/YYYY,您可以尝试转换(varchar,GETDATE(),103),为什么不在SQL中使用Convert(Date,“YourDateColumn”)。如果您需要特定格式,如dd/MM/YYYY,您可以尝试转换(varchar,GETDATE(),103),谢谢。但是我不明白你在说什么“在视图中公开你的id”它不起作用@DateTime.Parse(dt.Rows[i][“order_date”])。ToSortDateString()我已经修复了我的答案:)谢谢。但是我不明白你在说什么“在视图中公开你的id”它在@DateTime.Parse(dt.Rows[i][“order_date”])中不起作用。ToSortDateString()我已经修复了我的答案:)