real - Devuelva el valor del bit como 1/0 y no verdadero/falso en SQL Server
sql float real (3)
Esto se puede cambiar a 0/1 mediante el uso de CASE WHEN
como este ejemplo:
SELECT
CASE WHEN SchemaName.TableName.BitFieldName = ''true'' THEN 1 ELSE 0 END AS ''bit Value''
FROM SchemaName.TableName
Tengo una tabla en SQL Server 2000 con columna BitValue. Sin embargo, se muestra como Verdadero / Falso en SQL Server Management Studio. Cuando hago un Select * from Tablename
, devuelve los valores de BitValue Column como True / False. ¿Cómo lo obligo a devolver el valor como bits (1/0) en lugar de Verdadero / Falso? ¿Cualquier ayuda será muy apreciada?
Modifique su consulta para generar el resultado que desea.
Prueba a enviarlos a int:
select cast(bitFlag as int)
O, si lo desea, use case
:
select (case when bitFlag = 0 then 0 else 1 end)
Pruebe con este script, tal vez sea útil:
SELECT CAST(''TRUE'' as bit) -- RETURN 1
SELECT CAST(''FALSE'' as bit) --RETURN 0
De todos modos, siempre usaría un valor de 1 o 0 (no VERDADERO o FALSO). Siguiendo su ejemplo, el script de actualización sería:
Update Table Set BitField=CAST(''TRUE'' as bit) Where ID=1