-1

以下の文字列形式のデータ列があります

ここに画像の説明を入力

上記をコピーして Excel シートに貼り付け、列を日付形式に変更すると、上記のすべてが同じ形式に正しく変換されます。SQL サーバーに同様の機能はありますか? CAST と CONVERT を使用してみましたが、変換失敗エラーが発生しました。

ファローアップ

標準の CAST および CONVERT 関数が失敗する原因となる値を見つけました。次のように、decimal 値と int 値を持つ行がいくつかあります。

ここに画像の説明を入力

4

2 に答える 2

1

さまざまな形式のバリエーションを説明するために、最終的に CASE ステートメントを作成しました。

CASE
    WHEN [CommissionStart Date] LIKE '%NULL%'
    THEN '1/1/1900'
    WHEN ISDATE([CommissionStart Date]) = 1
    THEN CAST([CommissionStart Date] AS DATE)
    ELSE CONVERT(DATETIME, CAST([CommissionStart Date] AS DECIMAL(11, 5)))
END
于 2013-06-10T14:44:36.723 に答える