Mi pregunta es un poco más genérica, pero digamos que quiero probar algunas expresiones en SQL Server. Escribo SELECT 1=1
o SELECT 'a' > 'B'
y presiono F5, esperando ver el resultado, como hago cuando escribo SELECT 0, 1
.
Pero recibo un error en su lugar. ¿Porqué es eso? ¿Qué debería usar para evaluar esas expresiones sobre la marcha?SELECCIONAR 1 = 1 no funciona
Respuesta
SQL Server no tiene un tipo de datos booleanos.
Usted tendría que utilizar SELECT CASE WHEN 1=1 THEN 1 ELSE 0 END
Se puede usar un declaración de caso:
select case when 1=1 then 'true' else 'false' end
select case when 'a'>'B' then 'true' else 'false' end
o un IF ... ELSE
if 1=1
select 'true'
else
select 'false'
if 'a' > 'B'
select 'true'
else
select 'false'
¿Por qué el voto a favor de una respuesta válida? De hecho, la primera mitad de mi respuesta es la misma que la respuesta actual más votadas. –
forma más sencilla es select 1 where <test expression here>
Puede poner su expresión después de where
como esto
select 'true' where 1=1
select 'true' where 1<>1
de ustedes podría ponerlo en una instrucción IF
IF 1+1=2
BEGIN
PRINT 'One and one makes two.'
END
Se puede utilizar el siguiente para convertir la salida de la comparación a la pseudo-booleano:
select isnull((select 'false' where not(1**0=1**)) ,'true')
o, para tener un int como retorno:
select isnull((select 1 where 1<1) ,0)
- 1. "SELECCIONAR SUPERIOR 1 1" VS "SI EXISTE (SELECCIONAR 1"
- 2. Usar bundle_files = 1 con py2exe no funciona
- 3. StructLayout Pack = 1 no funciona con bool?
- 4. Haskell: Equation Expander 1+ (1+ (1+ (1+ (...)))) = ∞
- 5. 1 + 1/2 + 1/3 + --- + 1/n =?
- 6. python SyntaxError con dict (1 = ...), pero {1: ...} funciona
- 7. ¿Por qué -1 >> 1 es -1? ¡Y 1 >> 1 es 0!
- 8. SQL compacto seleccionar la parte superior 1
- 9. Prevenir fluidez NHibernate seleccionar n + 1
- 10. (-1 >> 1) == -1 - ¿Por qué?
- 11. SQL Seleccionar valores únicos en 1 columna
- 12. Seleccionar límite máx. 1 del grupo
- 13. Seleccionar registros de AHORA() -1 día
- 14. seleccionar -primero 1 en un archivo grande
- 15. Cómo evitar n + 1 seleccionar en django?
- 16. ¿Qué hace "seleccionar ((seleccionar (s), $ | = 1) [0])" hacer en Perl?
- 17. fiesta for i in {1} .. $ 1 no funciona como se esperaba
- 18. SELECCIONAR DISTINCT no funciona
- 19. history.go (-1) que se remonta no funciona en Chrome
- 20. setInterval() no se repite. Sólo funciona 1 vez
- 21. INTERVALO 1 MES no funciona Con symfony2 doctrine?
- 22. $ 1 y \ 1 en Ruby
- 23. ¿Qué significa 1. # INF00, -1. # IND00 y -1. # IND significa?
- 24. PHP strtotime() ¿funciona mal por 1 hora?
- 25. ¿Por qué esta gramática LR (1) no es LALR (1)?
- 26. ¿por qué byte + = 1 compilar pero byte = byte + 1 no?
- 27. ¿Cómo es esta gramática LR (1) pero no SLR (1)?
- 28. En Javascript, ¿por qué [1, 2] == [1, 2] o ({a: 1}) == ({a: 1}) es falso?
- 29. T-SQL 1 = 1 Rendimiento Hit
- 30. ¿Qué significa "- [1,]" en "if (! - [1,] &&! Window.XMLHttpRequest)"?
+1 ¿No hay ningún tipo de datos booleanos? Nunca me di cuenta de eso. Estoy muy sorprendido, pero tiene sentido ya que siempre utilicé un poco de datos booleanos, y su respuesta ya tiene 7 votos ... –