-2

fSystemDate、fOpenned、fStatusDate などの整数フィールド (列) を持つデータベースがあります。これらは日付を表していると思いますが、その形式がわかりません。これらのフィールドの値は、76505、76530、76554、76563 です。実際の日付が関連付けられている例はありません。

解決しました。回答を参照してください。

4

2 に答える 2

2

この形式は Clarion と呼ばれるプログラミング言語の一部であり、彼の日付番号は 1800 年 12 月 28 日から始まることがわかりました。次の 2 つの方法で、クラリオン データを SQL 日付に変換できます。

  1. SELECT DATEADD(日、76505、'28-12-1800')

    結果は 2010-06-15 00:00:00 になります。

  2. SELECT CONVERT(DateTime,76505 - 36163)

    結果は同じです。数値 36163 は、SQL を調整するために使用されます。これは、1900 年 1 月 1 日 (MSSQL 日時の番号付けの開始) から 1800 年 12 月 28 日 (Clarion の日時番号付けの開始) までの日数です。

私の場合の結果は正しいです。なぜなら、私は彼ら (私の顧客) にアプリケーションからのデータの例を尋ね、情報を比較したからです。

于 2016-01-12T19:26:52.963 に答える