Botón para abrir el Menú Botón para cerrar el Menú
Logo da empresa Alura
Iniciar Sesión Nuestros Planes
Formaciones Conoce a Luri
  • Programación _
  • Front End _
  • Data Science _
  • DevOps _
  • Innovación y Gestión _
Artículos de Tecnología > Data Science

En SQL, null es null, vacío está vacío

Alura
Guilherme Silveira
Guilherme Silveira
15/10/2020

Compartir

Considerando una tabla de datos de Estudiantes, con el campo nombre y el campo empresa, vamos a traer a aquellos que no han completado el campo empresa. Una solución es buscar la string vacía:

select nombre, empresa from Estudiantes where empresa = ‘ ‘;
> Paulo,
> ...
> Carlos
> Total: 1000 estudiantes

Pero sé que tengo más de 1000 estudiantes que aún no han completado este campo, ¿dónde están?

select nombre, empresa from Estudiantes where empresa is null;
> Guilherme, NULL
> ...
> Ana, NULL
> Total: 2000 estudiantes

¿Qué sucede que algunos estudiantes están en blanco, otros son nulos?

Tenga mucho cuidado al crear sus tablas. En general, hacemos lo mismo que con cualquier lenguaje de programación: definimos una variable y no le damos un valor predeterminado. Esto sucede mucho en la orientación a objetos, definimos variables miembro sin valor predeterminado. ¿Resultado?

Algunas personas no editaron el perfil y continúan con el valor predeterminado del banco (NULL). Otros editaron pero no completaron y ahora están en blanco. Y ahora cada query que harás en tu vida tienes que verificar:

select * from Estudiantes where empresa = ‘ ’
  or empresa is null and registro > '20150101';

Peor, además del hecho de que ya hemos visto que OR es un horror en la Tierra, debemos recordar ponerlo entre paréntesis para no dar un resultado incorrecto:

select * from Estudiantes 
where (empresa = ' ' or compania is null)
  and registro > '20150101';

Utiliza el valor predeterminado. Usa default y deja de preocuparte:

alter table Estudiantes modify column empresa
  varchar (200) default ' ' not null;

Ahora está seguro de que todas las consultas solo necesitan verificar valores vacíos. ¿La posibilidad de cometer errores? ¡Mucho más pequeña!

Para continuar desarrollandote, ¡mira nuestros cursos de Data Science aquí en Alura!

Guilherme Silveira
Guilherme Silveira

Co-fundador da Alura, da Caelum e do GUJ. Com 18 anos de ensino nas áreas de programação e dados, criou mais de 100 cursos. Possui formação em engenharia de software, viés matemático e criativo, além de ser medalhista de ouro em competições nacionais de computação, tendo representado o Brasil nos mundiais. Participante de comunidades open source e de educação em tecnologia, tendo escrito 7 livros. Faz mágica e fala coreano no tempo livre.

Artículo Anterior
select count(*), count(1) y count(nombre): batalla de los counts de SQL
Siguiente Artículo
Crear un ejecutable desde un programa Python

Ver otros artículos sobre Data Science

Navegación

  • Planes
  • Instructores
  • Blog
  • Política de privacidad
  • Términos de uso
  • Sobre nosotros
  • Preguntas frecuentes

¡CONTÁCTANOS!

  • ¡Quiero entrar en contacto!

Blog

  • Programación
  • Data Science
  • Front End
  • Innovación y Gestión
  • DevOps

AOVS Sistemas de Informática S.A CNPJ 05.555.382/0001-33

SÍGUENOS EN NUESTRAS REDES SOCIALES

YouTube Facebook Instagram Linkedin Whatsapp Spotify

NOVEDADES Y LANZAMIENTOS

Aliados

  • Programa de aceleração Scale-Up Endeavor
  • En Alura somos unas de las Scale-Ups seleccionadas por Endeavor, programa de aceleración de las empresas que más crecen en el país.
  • Growth Academy 2021 do Google For Startups
  • Fuimos unas de las 7 startups seleccionadas por Google For Startups en participar del programa Growth Academy en 2021
Alura

Powered by

Caelum

AOVS Sistemas de Informática S.A CNPJ 05.555.382/0001-33

SÍGUENOS EN NUESTRAS REDES SOCIALES

YouTube Facebook Instagram Linkedin Whatsapp Spotify

Cursos

Cursos de Programación
Lógica de Programación | Java
Cursos de Front End
HTML y CSS | JavaScript | React
Cursos de Data Science
Data Science | Machine Learning | Excel | Base de Datos | Data Visualization | Estadística
Cursos de DevOps
Docker | Linux
Cursos de Innovación y Gestión
Transformación Ágil | Marketing Analytics

Alura

  • Educação em Tecnologia

    • logo fiap FIAP
    • logo casa do codigo Casa do Código
    • logo pm3 PM3 - Cursos de Produto
  • Mais Alura

    • logo alura start START BY Alura
    • logo alura lingua Alura Língua
    • logo alura para empresas Alura Para Empresas
    • logo alura latam Alura LATAM
  • Comunidade

    • logo tech guide Tech Guide
    • logo 7 days of code 7 days of code
    • logo Hipsters ponto Jobs Hipsters ponto Jobs
  • Podcasts

    • logo Hipster Network Hipster Network
    • logo Hipsters ponto Tech Hipsters ponto Tech
    • logo Dev sem fronteiras Dev sem Fronteiras
    • logo Like a Boss Like a Boss
    • logo IA Sob Controle IA Sob Controle
    • logo Mesa de Produto Mesa de Produto
    • logo Decode Decode
    • logo FIAPCast FIAPCast