1

さまざまな処理方法を試した後、動的SQLステートメントで日付形式を正しく取得できません。日付形式について助けが必要です。

私は yyyy-mm-dd 形式で sql db に保存されている投稿日付フィールドを持っています..そして、それは mm-dd-yyyy として ASP Web ページに表示されます..日付を dd-mm-yyyy で表示する必要がありますフォーマット..これを行う方法はありますか?

これは私のSQLクエリです:

SELECT CR.Name AS country,C.Name,C.[Name 2],C.[E-Mail],[Pre-Assigned No_], [Posting Date], SIH.[Currency Code], SIH.[Shipment Method Code],[Total Boxes],[ARE Net Wt],[ARE Gr_Wt], SIH.[Shipping Agent Code], SIH.[Payment Terms Code] FROM [Sales Invoice Header] SIH 
INNER JOIN [Country_Region] CR ON CR.Code = SIH.[Country of Final Destination] 
INNER JOIN [Customer] C ON C.No_ = SIH.[Sell-to Customer No_] WHERE SIH.No_ = 'PEXP1213-540'
4

2 に答える 2

2

直接使用する106 または105を置き換えて、目的の形式を取得する必要はありません
SELECT convert(varchar, getdate(), 106)– dd mon yyyy

あなたのクエリは次のようになります

select  CR.Name as country,C.Name,C.[Name 2],C.[E-Mail],[Pre-Assigned No_], 
convert(varchar,[Posting Date], 106) AS [Posting Date], SIH.[Currency Code], SIH.[Shipment Method Code],
[Total Boxes],[ARE Net Wt],[ARE Gr_Wt], SIH.[Shipping Agent Code], SIH.[Payment Terms Code] from [Sales Invoice Header] SIH 
inner join [Country_Region] CR On CR.Code = SIH.[Country of Final Destination] 
inner join [Customer] C on C.No_ = SIH.[Sell-to Customer No_] where SIH.No_ = 'PEXP1213-540'

コードビハインドでも実行できます:

DateTime time = DateTime.Now;             // Use current time
string format = "dd mm yyyy";            // Use this format
Console.WriteLine(time.ToString(format));
于 2012-12-18T06:54:04.757 に答える
0

このクエリで試してください

select  CR.Name as country,C.Name,C.[Name 2],C.[E-Mail],[Pre-Assigned No_], 
replace(convert(varchar(12),[Posting Date], 103), '/','-') AS [Posting Date], SIH.[Currency Code], SIH.[Shipment Method Code],
[Total Boxes],[ARE Net Wt],[ARE Gr_Wt], SIH.[Shipping Agent Code], SIH.[Payment Terms Code] from [Sales Invoice Header] SIH 
inner join [Country_Region] CR On CR.Code = SIH.[Country of Final Destination] 
inner join [Customer] C on C.No_ = SIH.[Sell-to Customer No_] where SIH.No_ = 'PEXP1213-540'

注 : ここで [投稿日] 列は文字列なので、表示するだけで済みます。

于 2012-12-18T06:36:45.893 に答える