C# 使用24小时设置日期格式的方法

C# 使用24小时设置日期格式的方法,c#,sql,sql-server,C#,Sql,Sql Server,有人能告诉我用SQL和C#格式化日期字符串的方法吗 2/24/2012 22:00 注意:我不需要秒数 鉴于: declare @myDate varchar(50) set @myDate = '2/24/2012 10:00 PM' select @myDate 我展示上面的代码片段,表明日期的源类型是varchar。这可能不是最有效的方法,但我认为它应该可以工作: declare @myDate varchar(50) set @myDate = '2/24/2012 10:00 P

有人能告诉我用SQL和C#格式化日期字符串的方法吗

2/24/2012 22:00
注意:我不需要秒数

鉴于:

declare @myDate varchar(50)
set @myDate = '2/24/2012 10:00 PM'

select @myDate

我展示上面的代码片段,表明日期的源类型是varchar。

这可能不是最有效的方法,但我认为它应该可以工作:

declare @myDate varchar(50)
set @myDate = '2/24/2012 10:00 PM'

DECLARE @thisDate DATETIME
SET @thisDate = CAST(@myDate AS DATETIME)

SELECT CONVERT (NVARCHAR(10),@thisDate, 101) + ' ' + CONVERT(NVARCHAR(5), @thisDate, 8)

这可能不是最有效的方法,但我认为它应该有效:

declare @myDate varchar(50)
set @myDate = '2/24/2012 10:00 PM'

DECLARE @thisDate DATETIME
SET @thisDate = CAST(@myDate AS DATETIME)

SELECT CONVERT (NVARCHAR(10),@thisDate, 101) + ' ' + CONVERT(NVARCHAR(5), @thisDate, 8)
对于SQL,您可以尝试:

DECLARE @date DATETIME;
SET @date = CONVERT(DATETIME, @myDate, 20);
SELECT convert(varchar(10), @date, 101) + convert(varchar(5), @date, 114);
对于C#

对于SQL,您可以尝试:

DECLARE @date DATETIME;
SET @date = CONVERT(DATETIME, @myDate, 20);
SELECT convert(varchar(10), @date, 101) + convert(varchar(5), @date, 114);
对于C#

在C#中,您可以将参数传递给ToString()方法,以获得您想要的结果。这里有很好的记录:

根据这一点,您应该尝试:

myDate.ToString("MM/dd/yyyy HH:mm");
在C#中,您可以将参数传递给ToString()方法,以获得您想要的结果。这里有很好的记录:

根据这一点,您应该尝试:

myDate.ToString("MM/dd/yyyy HH:mm");

在SQL Server中在SQL Server中两者都是?还有SQLCLR=)假设SQL Server…两者都有?还有SQLCLR=)假设SQL Server…熟悉DateTime的重写ToString()方法。这很方便。熟悉DateTime的重写ToString()方法。它很方便。如果不指定长度,请不要使用
varchar
。如果未指定长度,请不要使用
varchar
<代码>NVARCHAR?为什么需要可变长度或Unicode?101将永远不会生成带有umlauts或阿拉伯语的日期。:-)<代码>NVARCHAR?为什么需要可变长度或Unicode?101将永远不会生成带有umlauts或阿拉伯语的日期。:-)
SELECT RTRIM(MONTH(@myDate)) + '/' + RTRIM(DAY(@myDate)) + '/' + RTRIM(YEAR(@myDate))
DateTime.Now.ToString("M/d/yyyy HH:mm");
SELECT FORMAT(SYSDATETIME(), 'M/d/yyyy HH:mm');
2/25/2012 00:38