¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Solução para problemas com declaração SELECT e valores de campo vazios no ADS (12.2)

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 1 Vistas
0
Cargando...

Olá,

Estou com problemas com ADS (12.2) em uma declaração SELECT e valores de campo vazios:
Não está funcionando corretamente!
Já tentei diferentes variantes:

select * from DEMO where PARNR = 20 AND Empty(TXTFLD)
select * from DEMO where PARNR = 20 AND TXTFLD <> 'X'
select * from DEMO where PARNR = 20 AND TXTFLD = ''

Nenhum desses funciona de forma confiável.
O que posso fazer?

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

>>select * from DEMO where PARNR = 20 AND TXTFLD IS NULL;

Apenas 11 de 20 resultados estão sendo exibidos. Portanto, nem todos os registros foram encontrados.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Ainda não nos disse o que acontece quando executa

SELECT * FROM DEMO WHERE PARNR = 20 AND TXTFLD IS NULL;

exceto que "não funciona" e não retorna nenhum erro.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

°Obviamente esto es un error!

A única solução que encontrei é:
SELECT * FROM demo WHERE PARNR = 20 e ifNull(TxtFld,'') = ''

Mas isso não é muito satisfatório.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Estou surpreso que alguma linha não tenha retornado nenhum valor. NULL deveria ter retornado como 0. 32, no entanto, é um espaço, que não está vazio nem nulo em uma tabela ADT. Portanto, é apropriado que TXTFLD <> 'X' retorne 11 linhas, já que ' ' <> 'X'. NULL <> 'X' é indeterminado.

Se você executar

UPDATE DEMO
SET TXTFLD = null;

Você deve encontrar que

select * from DEMO where PARNR = 20 AND Empty(TXTFLD);

funciona

Eu esperaria que

select * from DEMO where PARNR = 20 AND TXTFLD IS NULL;

também funcione. Atualmente retorna 0 linhas?

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?