tipos - ¿Cómo usar la instrucción SQL Select con IF EXISTS sub consulta?
subconsultas informix (4)
También puede usar ISNULL y una declaración de selección para obtener este resultado
SELECT
Table1.ID,
ISNULL((SELECT ''TRUE'' FROM TABLE2 WHERE TABLE2.ID = TABEL1.ID),''FALSE'') AS columName,
etc
FROM TABLE1
¿Cómo seleccionar el valor booleano de la sub consulta con la instrucción IF EXISTS (SQL Server)?
Debería ser algo así como:
SELECT
TABEL1.Id,
NewFiled = (IF EXISTS(SELECT Id FROM TABLE2 WHERE TABLE2.ID = TABEL1.ID)
SELECT ''TRUE''
ELSE
SELECT ''FALSE'')
FROM TABEL1
Use CASE
:
SELECT
TABEL1.Id,
CASE WHEN EXISTS (SELECT Id FROM TABLE2 WHERE TABLE2.ID = TABLE1.ID)
THEN ''TRUE''
ELSE ''FALSE''
END AS NewFiled
FROM TABLE1
Si TABLE2.ID
es Único o una clave principal, también puede usar esto:
SELECT
TABEL1.Id,
CASE WHEN TABLE2.ID IS NOT NULL
THEN ''TRUE''
ELSE ''FALSE''
END AS NewFiled
FROM TABLE1
LEFT JOIN Table2
ON TABLE2.ID = TABLE1.ID
Use una sentencia CASE
y hágalo así:
SELECT
T1.Id [Id]
,CASE WHEN T2.Id IS NOT NULL THEN ''TRUE'' ELSE ''FALSE'' END [Has Foreign Key in T2]
FROM
TABLE1 [T1]
LEFT OUTER JOIN
TABLE2 [T2]
ON
T2.Id = T1.Id
SELECT Id, ''TRUE'' AS NewFiled FROM TABEL1
INTERSECT
SELECT Id, ''TRUE'' AS NewFiled FROM TABEL2
UNION
SELECT Id, ''FALSE'' AS NewFiled FROM TABEL1
EXCEPT
SELECT Id, ''FALSE'' AS NewFiled FROM TABEL2;