sql >> データベース >  >> RDS >> Sqlserver

MSExcelとSQLServerでの日時変換の違い

    intからのキャストが許可されているDATETIMEに特に集中すると、不一致の理由は2つあります。

    1. Excelは日付に1を基数として使用し、SQL Serverは0を使用します。つまり、01/01/1900 Excelで数値に変換すると1になりますが、SQLでは0になります。SELECT CAST(CAST('19000101' AS DATETIME) AS INT); 0を与えます。

    2. バグが意図的ではなかったロータスからの移植性を可能にするために、Excelには意図的なエラーがあります*。 Excelは1900年2月29日を有効な日付と見なしますが、1900年はうるう年ではありませんでした。 SQLにはこの問題がないため、Excelカレンダーに1日余分にあることを意味します。

    *(これについてさらに読むと、意図的であるか、重要でないと見なされている可能性があります)

    補遺

    Microsoftサポートアイテム があります その状態:



    1. MySQL:InnoDb:セマフォ待機が600秒以上続きました。サーバーを意図的にクラッシュさせます

    2. GROUP BYはどのように機能しますか?

    3. 今年の毎月のパーティションを作成するにはどうすればよいですか

    4. MySQLで複数列の主キーで複数の行を選択するにはどうすればよいですか?