CursosEmpresasBlogLiveConfPrecios

JSON

Clase 17 de 22 • Curso de PostgreSQL 2017

Clase anteriorSiguiente clase

Contenido del curso

Bienvenidos

    Introducción a Postgresql

    • 1
      PostgreSQL: qué es

      PostgreSQL: qué es

      07:59 min
    • 2
      Lo nuevo en Postgresql

      Lo nuevo en Postgresql

      01:32 min
    • 3
      ¿Por qué es PostgreSQL?

      ¿Por qué es PostgreSQL?

      19:41 min
    • 4
      Entendiendo el Core de Postgresql

      Entendiendo el Core de Postgresql

      11:50 min
    • 5
      Archivos de configuración

      Archivos de configuración

      13:55 min
    • 6
      Manejo De Conexiones

      Manejo De Conexiones

      30:21 min
    • 7
      Preguntas y Respuestas

      Preguntas y Respuestas

      19:12 min
    • 8
      [Extra] Cómo instalar PostgreSQL en Linux, Windows y OS X (Mac).

      [Extra] Cómo instalar PostgreSQL en Linux, Windows y OS X (Mac).

      00:00 min

    Roles, Tipos de Datos, Rangos y JSON en Postgresql

    • 9
      Uso de roles en Postgresql

      Uso de roles en Postgresql

      19:14 min
    • 10
      Creando una base de datos

      Creando una base de datos

      06:57 min
    • 11
      Arquitectura de la información usando esquemas

      Arquitectura de la información usando esquemas

      04:43 min
    • 12
      Privilegios de usuario

      Privilegios de usuario

      08:27 min
    • 13
      Datos seriales

      Datos seriales

      05:35 min
    • 14
      Cadenas de texto

      Cadenas de texto

      06:03 min
    • 15
      Arreglos

      Arreglos

      11:07 min
    • 16
      Rangos

      Rangos

      09:55 min
    • 17
      JSON

      JSON

      Viendo ahora
    • 18
      Preguntas y Respuestas

      Preguntas y Respuestas

      10:40 min

    JSON y Postgis

    • 19
      Manejo de Documentos JSON

      Manejo de Documentos JSON

      28:06 min
    • 20
      Postgres HStore

      Postgres HStore

      26:53 min
    • 21
      PostGis

      PostGis

      28:00 min
    • 22
      Preguntas y Respuestas

      Preguntas y Respuestas

      12:27 min
    Tomar examen
      Juan Samudio

      Juan Samudio

      student•
      hace 10 años

      Diferencias entre el type JSON y JSONB:

        Jhon Salguero

        Jhon Salguero

        student•
        hace 10 años

        Excelente Aporte

      Rafael Guillermo Rodriguez Garcia

      Rafael Guillermo Rodriguez Garcia

      student•
      hace 8 años
      CREATE TABLE profiles(id serial PRIMARY KEY, profile JSON); INSERT INTO profiles(profile) VALUES ( '{"name": "Mario", "tech": ["postgresql", "ruby", "elixir"] }'); INSERT INTO profiles(profile) VALUES ( '{"name": "Jeduan", "tech": ["javascript", "nodejs"] }'); SELECT json_extract_path_text(profile, 'name') FROM profiles; SELECT json_extract_path_text(profile, 'tech') FROM profiles;
      RODRIGO NOREÑA ARTEAGA

      RODRIGO NOREÑA ARTEAGA

      student•
      hace 10 años

      El inconveniente es que la función "json_extract_path_text" devuelve un tipo texto, y "json_array_elements" espera un tipo "JSON". Una forma de hacer la consulta (aunque tal vez el resultado no es el que quería Mario) es:

      SELECT json_array_elements(json_extract_path(profile, 'tech')) FROM profiles;
        Jorge Argumedo

        Jorge Argumedo

        student•
        hace 10 años

        En tu ejemplo falto castear el resultado de la funcion json_extract_path_text que efectivamente devuelve un text, ya que json_array_elements requiere un json; al final quedaria como lo especificaste, pero casteado para que funcione sin problemas.
        En mi caso yo llame a la tabla profile

        select json_array_elements(json_extract_path_text(profile, 'tech')::json) from profile
        AARON OBED GIRÓN GARRIDO

        AARON OBED GIRÓN GARRIDO

        student•
        hace 8 años

        Hey mil gracias yo intente hacerlo por mi cuenta pero tenia una cantidad horrible de errores;

      Ignacio Castillejo Gómez

      Ignacio Castillejo Gómez

      student•
      hace 8 años

      Tener un pequeño fallo puntual esta bien, pero quedarse tan pillado no lo veo bien. Me da la sensación de que no tenia bien preparada la clase. 😦

        Diego Forero

        Diego Forero

        Team Platzi•
        hace 8 años

        Estas clases fueron en el formato anterior donde eran clases en vivo, por eso pasan este tipo de cosas 😃, por eso cambiamos la metodología y ahora las clases son grabadas, editadas y con el contenido más curado.

        Ignacio Castillejo Gómez

        Ignacio Castillejo Gómez

        student•
        hace 8 años

        Si, deberían adaptar este curso a la nueva metodología.

      Armando García

      Armando García

      student•
      hace 7 años

      Este curso tiene increíble potencial que se ve mermado por la metodología antigua. Ya deberían haber actualizado este curso, en verdad duele un montón tomarlo después de haber aprobado otros con la nueva metodología. Por favor, háganlo ya.

      Ronal Jairo Cabello Cordova

      Ronal Jairo Cabello Cordova

      student•
      hace 5 años

      --Anotaciones-- --JSON se agrego a postgresql como un tipo de dato --Aparece por primera vez en la versión 9.2 postgresql

      create table profiles(id serial primary key,profile Json); insert into profiles(profile) values('{"name":"Mario","tech":["postgresql","ruby","elixir"]}'); insert into profiles(profile) values('{"name":"Jairo","tech":["Python","java","javascript"]}'); select * from profiles;

      --Comprobar que el dato ingresado en la columna profile es un JSON

      select json_array_elements(json_extract_path_text(profile,'tech')::JSON) from profiles; select json_extract_path_text(profile,'name') from profiles; select json_array_elements('["hello",1.3,"\u2603"]');

      --Guardar un json de manera binaria --Beneficio de guardar un documento de manera binaria velocidad en las operaciones y reducción de espacio create table profiles_b(id serial primary key, profile JSONB); insert into profiles_b(profile) values('{"name":"Hiro","tech":["postgresql","ruby","elixir"]}'); insert into profiles_b(profile) values('{"name":"Jairo","tech":["Spring","Python","ML"]}');

      Yurlady Tatiana Arbeláez Castaño

      Yurlady Tatiana Arbeláez Castaño

      student•
      hace 10 años

      CREATE TABLE PROFILES_B(id serial PRIMARY KEY, profile JSON);

      ERROR: type "json" does not exist
      SQL state: 42704
      Character: 56

      COMO PUEDO AGREGAR LA EXTENSIÓN QUE CONTIENE JSON en PGAdmin II???

        Jorge Argumedo

        Jorge Argumedo

        student•
        hace 10 años

        Hasta donde tengo conocimiento, aunque no lo he consultado últimamente, json es nativo pero en las ultimas versiones de postgres, puede pasar que estas trabajando con una versión muy vieja, consulta cual es tu versión y si tiene soporte para JSON.

      Cesar Augusto

      Cesar Augusto

      student•
      hace 9 años

      Cómo actualizo postgres a su ultima versión, tengo la version psql (9.1.24) en linux ubuntu?

        Ricardo Azpeitia P.

        Ricardo Azpeitia P.

        student•
        hace 9 años

        Basicamente añades nuevas sources al apt y lo instalas.

        Fuente:

      RAÚL VILLALBA MEDINA

      RAÚL VILLALBA MEDINA

      student•
      hace 9 años

      qué se gana guardando el json en base de datos? es más rapido? menos?

        Juan David Marquez Rodriguez

        Juan David Marquez Rodriguez

        student•
        hace 8 años

        JSON se suele utilizar para transporte de datos y así aprovecharla para nuestras aplicaciones.

        Cesar David Ramírez Dimaté

        Cesar David Ramírez Dimaté

        student•
        hace 7 años

        Revisa este comentario. En tiempos de respuesta es mejor utilizar mongodb directamente.

      Alexander Silvera

      Alexander Silvera

      student•
      hace 8 años

      Para que sirve en una base de datos archivos de tipo Json??

        Juan David Marquez Rodriguez

        Juan David Marquez Rodriguez

        student•
        hace 8 años

        Según entiendo JSON sirve como un sistema de intercambio de información, es el mas ligero y es muy rápido.

        Alexander Silvera

        Alexander Silvera

        student•
        hace 8 años

        ok muchas gracias

      Marco Elizalde

      Marco Elizalde

      student•
      hace 8 años

      Ventajas JSONB

      Seba Cardoso

      Seba Cardoso

      student•
      hace 8 años

      Si es un JSON muy grande que va a estar continuamente agregando datos me conviene tener el JSON en PostgreSQL? Si uso mongoDB para guardar el JSON como relacionaria el documento con la tabla?

        David Toca

        David Toca

        student•
        hace 8 años

        Puede ser una opcion, aunque eso me suena a que estas guardando en un json algo que tal vez deberias guardar en varias tablas. Mongo puede ser una buena opcion, habria que ver tu caso de uso, para la relacion tendrias que guardar el id del registro de la tabla dentro del documento.

        Seba Cardoso

        Seba Cardoso

        student•
        hace 8 años

        Ahora me di cuenta que tenes razón, lo que tengo en JSON lo puedo almacenar en tablas. Pero mi duda surge porque estos datos van a estar actualizandose constantemente y haciendo calculos. Según leí MongoDB es mas rápido en estos casos. Aca una comparación:
        MongoDBvsPosgreSQL

      Marco Elizalde

      Marco Elizalde

      student•
      hace 8 años

      Select JSON

      Joaquin Araujo

      Joaquin Araujo

      student•
      hace 8 años

      Personalmente no me siento a gusto trabajar documentos JSON en una DB relacional, no sé pierde sentido el “relacional”.

        Diego Forero

        Diego Forero

        Team Platzi•
        hace 8 años

        Para nada, Json es solo un tipo de dato para la base de datos, tu puedes guardar esto mismo en un campo de tipo text, solo que en el tipo json tienes las opciones de búsqueda dentro de este json, imagina que tienes por ejemplo un blog y que de un post quieres guardar cierta información para un acceso rápido, eso lo puedes guardar en JSON y lo tienes disponible de manera rápida desde ese campo.

        Joaquin Araujo

        Joaquin Araujo

        student•
        hace 8 años

        Entiendo tu punto Diego, gracias!

      Hector Ivan Valadez Valenzuela

      Hector Ivan Valadez Valenzuela

      student•
      hace 8 años

      Al crear la tabla y asignarle el tipo de dato JSONB me arroja el error de que el tipo de datp no existe, sera por la version de postgres que tengo instalada?

      La que tengo instalada es la 9.3

        Diego Forero

        Diego Forero

        Team Platzi•
        hace 8 años

        El tipo de dato fue introducido en la versión 9.4.
        Fuente:

        Hector Ivan Valadez Valenzuela

        Hector Ivan Valadez Valenzuela

        student•
        hace 8 años

        Enterado, Muchas Gracias

    Escuelas

    • Desarrollo Web
      • Fundamentos del Desarrollo Web Profesional
      • Diseño y Desarrollo Frontend
      • Desarrollo Frontend con JavaScript
      • Desarrollo Frontend con Vue.js
      • Desarrollo Frontend con Angular
      • Desarrollo Frontend con React.js
      • Desarrollo Backend con Node.js
      • Desarrollo Backend con Python
      • Desarrollo Backend con Java
      • Desarrollo Backend con PHP
      • Desarrollo Backend con Ruby
      • Bases de Datos para Web
      • Seguridad Web & API
      • Testing Automatizado y QA para Web
      • Arquitecturas Web Modernas y Escalabilidad
      • DevOps y Cloud para Desarrolladores Web
    • English Academy
      • Inglés Básico A1
      • Inglés Básico A2
      • Inglés Intermedio B1
      • Inglés Intermedio Alto B2
      • Inglés Avanzado C1
      • Inglés para Propósitos Específicos
      • Inglés de Negocios
    • Marketing Digital
      • Fundamentos de Marketing Digital
      • Marketing de Contenidos y Redacción Persuasiva
      • SEO y Posicionamiento Web
      • Social Media Marketing y Community Management
      • Publicidad Digital y Paid Media
      • Analítica Digital y Optimización (CRO)
      • Estrategia de Marketing y Growth
      • Marketing de Marca y Comunicación Estratégica
      • Marketing para E-commerce
      • Marketing B2B
      • Inteligencia Artificial Aplicada al Marketing
      • Automatización del Marketing
      • Marca Personal y Marketing Freelance
      • Ventas y Experiencia del Cliente
      • Creación de Contenido para Redes Sociales
    • Inteligencia Artificial y Data Science
      • Fundamentos de Data Science y AI
      • Análisis y Visualización de Datos
      • Machine Learning y Deep Learning
      • Data Engineer
      • Inteligencia Artificial para la Productividad
      • Desarrollo de Aplicaciones con IA
      • AI Software Engineer
    • Ciberseguridad
      • Fundamentos de Ciberseguridad
      • Hacking Ético y Pentesting (Red Team)
      • Análisis de Malware e Ingeniería Forense
      • Seguridad Defensiva y Cumplimiento (Blue Team)
      • Ciberseguridad Estratégica
    • Liderazgo y Habilidades Blandas
      • Fundamentos de Habilidades Profesionales
      • Liderazgo y Gestión de Equipos
      • Comunicación Avanzada y Oratoria
      • Negociación y Resolución de Conflictos
      • Inteligencia Emocional y Autogestión
      • Productividad y Herramientas Digitales
      • Gestión de Proyectos y Metodologías Ágiles
      • Desarrollo de Carrera y Marca Personal
      • Diversidad, Inclusión y Entorno Laboral Saludable
      • Filosofía y Estrategia para Líderes
    • Diseño de Producto y UX
      • Fundamentos de Diseño UX/UI
      • Investigación de Usuarios (UX Research)
      • Arquitectura de Información y Usabilidad
      • Diseño de Interfaces y Prototipado (UI Design)
      • Sistemas de Diseño y DesignOps
      • Redacción UX (UX Writing)
      • Creatividad e Innovación en Diseño
      • Diseño Accesible e Inclusivo
      • Diseño Asistido por Inteligencia Artificial
      • Gestión de Producto y Liderazgo en Diseño
      • Diseño de Interacciones Emergentes (VUI/VR)
      • Desarrollo Web para Diseñadores
      • Diseño y Prototipado No-Code
    • Contenido Audiovisual
      • Fundamentos de Producción Audiovisual
      • Producción de Video para Plataformas Digitales
      • Producción de Audio y Podcast
      • Fotografía y Diseño Gráfico para Contenido Digital
      • Motion Graphics y Animación
      • Contenido Interactivo y Realidad Aumentada
      • Estrategia, Marketing y Monetización de Contenidos
    • Desarrollo Móvil
      • Fundamentos de Desarrollo Móvil
      • Desarrollo Nativo Android con Kotlin
      • Desarrollo Nativo iOS con Swift
      • Desarrollo Multiplataforma con React Native
      • Desarrollo Multiplataforma con Flutter
      • Arquitectura y Patrones de Diseño Móvil
      • Integración de APIs y Persistencia Móvil
      • Testing y Despliegue en Móvil
      • Diseño UX/UI para Móviles
    • Diseño Gráfico y Arte Digital
      • Fundamentos del Diseño Gráfico y Digital
      • Diseño de Identidad Visual y Branding
      • Ilustración Digital y Arte Conceptual
      • Diseño Editorial y de Empaques
      • Motion Graphics y Animación 3D
      • Diseño Gráfico Asistido por Inteligencia Artificial
      • Creatividad e Innovación en Diseño
    • Programación
      • Fundamentos de Programación e Ingeniería de Software
      • Herramientas de IA para el trabajo
      • Matemáticas para Programación
      • Programación con Python
      • Programación con JavaScript
      • Programación con TypeScript
      • Programación Orientada a Objetos con Java
      • Desarrollo con C# y .NET
      • Programación con PHP
      • Programación con Go y Rust
      • Programación Móvil con Swift y Kotlin
      • Programación con C y C++
      • Administración Básica de Servidores Linux
    • Negocios
      • Fundamentos de Negocios y Emprendimiento
      • Estrategia y Crecimiento Empresarial
      • Finanzas Personales y Corporativas
      • Inversión en Mercados Financieros
      • Ventas, CRM y Experiencia del Cliente
      • Operaciones, Logística y E-commerce
      • Gestión de Proyectos y Metodologías Ágiles
      • Aspectos Legales y Cumplimiento
      • Habilidades Directivas y Crecimiento Profesional
      • Diversidad e Inclusión en el Entorno Laboral
      • Herramientas Digitales y Automatización para Negocios
    • Blockchain y Web3
      • Fundamentos de Blockchain y Web3
      • Desarrollo de Smart Contracts y dApps
      • Finanzas Descentralizadas (DeFi)
      • NFTs y Economía de Creadores
      • Seguridad Blockchain
      • Ecosistemas Blockchain Alternativos (No-EVM)
      • Producto, Marketing y Legal en Web3
    • Recursos Humanos
      • Fundamentos y Cultura Organizacional en RRHH
      • Atracción y Selección de Talento
      • Cultura y Employee Experience
      • Gestión y Desarrollo de Talento
      • Desarrollo y Evaluación de Liderazgo
      • Diversidad, Equidad e Inclusión
      • AI y Automatización en Recursos Humanos
      • Tecnología y Automatización en RRHH
    • Finanzas e Inversiones
      • Fundamentos de Finanzas Personales y Corporativas
      • Análisis y Valoración Financiera
      • Inversión y Mercados de Capitales
      • Finanzas Descentralizadas (DeFi) y Criptoactivos
      • Finanzas y Estrategia para Startups
      • Inteligencia Artificial Aplicada a Finanzas
      • Domina Excel
      • Financial Analyst
      • Conseguir trabajo en Finanzas e Inversiones
    • Startups
      • Fundamentos y Validación de Ideas
      • Estrategia de Negocio y Product-Market Fit
      • Desarrollo de Producto y Operaciones Lean
      • Finanzas, Legal y Fundraising
      • Marketing, Ventas y Growth para Startups
      • Cultura, Talento y Liderazgo
      • Finanzas y Operaciones en Ecommerce
      • Startups Web3 y Blockchain
      • Startups con Impacto Social
      • Expansión y Ecosistema Startup
    • Cloud Computing y DevOps
      • Fundamentos de Cloud y DevOps
      • Administración de Servidores Linux
      • Contenerización y Orquestación
      • Infraestructura como Código (IaC) y CI/CD
      • Amazon Web Services
      • Microsoft Azure
      • Serverless y Observabilidad
      • Certificaciones Cloud (Preparación)
      • Plataforma Cloud GCP

    Platzi y comunidad

    • Platzi Business
    • Live Classes
    • Lanzamientos
    • Executive Program
    • Trabaja con nosotros
    • Podcast

    Recursos

    • Manual de Marca

    Soporte

    • Preguntas Frecuentes
    • Contáctanos

    Legal

    • Términos y Condiciones
    • Privacidad
    • Tyc promociones
    Reconocimientos
    Reconocimientos
    Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
    Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
    Logo reconocimientoPrimera Startup EdTech · 2018
    Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
    Logo reconocimientoCEO Mejor Emprendedor del año · 2024
    De LATAM conpara el mundo
    YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads