Varia in base a RDBMS, ma se indovino bene, è PostgreSQL, nel qual caso il ::
converte a.dc
a un tipo di data date
.
In altri gusti...
In MS SQL Server 2000:
Per le funzioni predefinite dall'utente che restituiscono una tabella, il nome della funzione deve essere specificato con due due punti iniziali (::) per distinguerlo dalle funzioni definite dall'utente che non sono integrate. Deve anche essere specificato come nome in una parte senza database o qualifiche di proprietario. Esempio:SELECT * FROM::fn_helpcollations() b.. Per le funzioni predefinite dall'utente che restituiscono un valore ascalare, il nome della funzione deve essere specificato come nome di una parte (non specificare il database o il proprietario). Non specificare due due punti iniziali (::).
In MS SQL Server 2005:
I due punti non sono più necessari per le UDF che restituiscono una tabella.
Comunque...
I due punti sono richiesti in SQLServer 2005 quando si concedono autorizzazioni su schemi, certificati, endpoint e pochi altri elementi di protezione.
Così come...
Quando si utilizzano i tipi definiti dall'utente, i metodi statici del tipo devono essere richiamati utilizzando la sintassi dei due punti.
Fonti:BOL e il blog di Kalen Delaney