SQL の二重コロン `::` 表記 質問する

SQL の二重コロン `::` 表記 質問する

誰かのコードを拾ってきたのですが、以下は節の一部ですWHERE。ここで二重コロンは何を示しているのでしょうか?

b.date_completed >  a.dc::date + INTERVAL '1 DAY 7:20:00'

ベストアンサー1

RDBMS によって異なりますが、私の推測が正しければ PostgreSQL であり、その場合、 はの日付型に::変換されます。a.dcdate

他のフレーバーでは...

MS SQL Server 2000 の場合:

テーブルを返す組み込みのユーザー定義関数の場合、関数名は、組み込みでないユーザー定義関数と区別するために、先頭に二重コロン (::) を付けて指定する必要があります。また、データベースまたは所有者の修飾子を付けずに、1 部構成の名前として指定する必要があります。例: SELECT * FROM ::fn_helpcollat​​ions() b.. スカラー値を返す組み込みのユーザー定義関数の場合、関数名は、1 部構成の名前として指定する必要があります (データベースまたは所有者を指定しないでください)。先頭に二重コロン (::) を付けないでください。

MS SQL Server 2005 の場合:

テーブルを返す UDF では二重コロンは不要になりました。

しかし...

SQL Server 2005 では、スキーマ、証明書、エンドポイント、およびその他のセキュリティ保護可能な項目に対する権限を付与するときに、二重コロンが必要です。

同様に...

ユーザー定義型を使用する場合、その型の静的メソッドは二重コロン構文を使用して呼び出す必要があります。

出典:ボルそしてカレン・デラニーのブログ

おすすめ記事