17

オラクル:

select systimestamp from dual

MySQL:

select current_timestamp

SQLサーバー:

select current_timestamp

PostgreSQL:

select current_timestamp

問題は、 HSQLDBで現在のタイムスタンプを取得するにはどうすればよいですか? バージョン 1.8.0.10 を使用しています

4

5 に答える 5

26

私が使用する選択で

 SELECT CURRENT_DATE AS today, CURRENT_TIME AS now FROM (VALUES(0))
于 2011-07-03T10:25:37.813 に答える
10

@alexdownの答えDUALは非常に正しいです。1.8では、OracleやInterBase / FirebirdRDB$DATABASEテーブルのように、これを行うには1行の関係が必要です。

ただし、2.0シリーズに移行すると、1行の関係に依存せずにSQL-99の「VALUESコンストラクター」を使用できるようになります。

sql> VALUES (current_timestamp);
2010-04-22 15:22:40.997

VALUESが選択するベンダー固有のデフォルトから列の名前を変更する必要がある場合は、いつでも次の選択を使用できます。SELECT * FROM (VALUES (current_timestamp)) v(my_new_name)

于 2010-04-22T15:34:22.690 に答える
5

使用できます

CALL current_timestamp

現在のタイムスタンプを取得します。HSQL メーリング リストでの議論によると、これはからのダミー選択を行うよりもはるかに効率的ですINFORMATION_SCHEMA.SYSTEM_TABLES

于 2011-08-03T08:22:14.913 に答える
4

HSQLDB 2.1 以降では、すべてのオプションがあります。

接続プロパティ hsqldb.syntax_ora、hsqldb.syntax_pgs、hsqldb.syntax_mss または hsqldb.syntax_mys=true を使用すると、他のデータベースでサポートされているフォームを使用できます。同等の SQL はSET DATABASE SQL SYNTAX ORA TRUEであり、他の方言についても同様です。

すべてのモードで HSQLDB によってサポートされるネイティブの SQLStandard 形式は次のとおりです。

VALUES (CURRENT_TIMESTAMP)
于 2011-04-17T09:59:19.930 に答える
4

あなたは書ける

select current_timestamp from tablename  

tablenameデータベース内の実際のテーブルです。

クエリの結果は、現在のタイムスタンプのみです。

于 2009-05-26T09:10:13.590 に答える