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

OracleにリンクされているSQLServerからSQLクエリを作成するときに、日付リテラルを指定するにはどうすればよいですか?

    ODBC形式が好きです:

    --DateTime
    SELECT {ts'2015-09-20 12:30:00'}
    --Time (however this comes with "today"-time)
    SELECT {t'12:30:00'}
    --Date
    SELECT {d'2015-09-20'}
    GO
    

    単純な日付リテラルは文化に依存しません...

    SET LANGUAGE ENGLISH;
    SELECT CAST('2014-09-13' AS DATETIME);
    GO
    SET LANGUAGE GERMAN;
    SELECT CAST('2014-09-13' AS DATETIME);--ERROR: there's no month "13"
    GO
    

    ただし、ターゲットタイプDATEでは機能します。 (この違いはかなり奇妙です...):

    SET LANGUAGE ENGLISH;
    SELECT CAST('2014-09-13' AS DATE);
    GO
    SET LANGUAGE GERMAN;
    SELECT CAST('2014-09-13' AS DATE);--ERROR: there's no month "13"
    GO
    

    Thx to lad2025完全を期すために、正常に機能する「完全な」ISO8601を追加したいと思います。

    SET LANGUAGE ENGLISH;
    SELECT CAST('2014-09-13T12:30:00' AS DATETIME);
    GO
    SET LANGUAGE GERMAN;
    SELECT CAST('2014-09-13T12:30:00' AS DATETIME);
    GO
    


    1. RAC OneNodeアーキテクチャでのActiveDataGuardフィジカルスタンバイの設定–パート2

    2. MySQLに書き込むときにTextAreaからの改行を保持する

    3. Oracle.ManagedDataAccess.EntityFramework-ORA-01918:ユーザー'dbo'は存在しません

    4. SQLサーバーデータベースをバックアップするための簡単なコマンドラインプログラムまたはスクリプトとは何ですか?