Nota, quello che vuoi veramente è un vincolo di chiave esterna. Detto questo, per ottenere una "query" in un controllo puoi scrivere una funzione che contiene la query e restituisce un valore scalare, quindi utilizzare quella funzione nel vincolo di controllo.
CREATE FUNCTION myFunction (
@field DATATYPE(?)
)
RETURNS VARCHAR(5)
AS
BEGIN
IF EXISTS (SELECT* FROM Table2 WHERE MYFIELD = @field)
return 'True'
return 'False'
END
Qualcosa del genere. Non testato.
Quindi puoi aggiungerlo al tuo assegno in questo modo
ALTER TABLE Table1
WITH CHECK ADD CONSTRAINT CK_Code
CHECK (myFunction(MYFIELD) = 'True')