Hub
  • Software
  • Blog
  • Forum
  • Events
  • Documentation
  • About KNIME
  • KNIME Hub
  • Nodes
  • JSON to Table
NodeNode / Manipulator

JSON to Table

Structured Data JSON
Drag & drop
Like
Copy short link

Converts a JSON column to multiple columns, whereby the column list is heuristically extracted from the JSON structure. It can either extract the primitive leaf elements (like strings and numbers), omitting the JSON tree path, or the full JSON structure. The latter, however, may yield some confusing output as the types of the columns are again JSON or collections of JSON.
Note that this node is meant to be used for "well-structured", relatively flat JSON objects which adhere the same schema in all rows. In case the JSON objects are more complex it's better to use nodes like JSON Path or JSON Path (Dictionary) .
Some examples on the following JSON column input may help to clarify the generated output.

JSON
{"a": {"b": [1, 2], "c":"c"}}
{"a": {"b": [3], "d":null} }
Some options with their results: Only leaves , Use leaf name (uniquify with (#1)/(#2)/...)
Types:
  • b - JSON when Keep as JSON array , list of integers when Keep as collection elements
  • c - String
  • d - String
(The actual order of the columns might be different.)
b c d
[1,2] c ?
[3] ? ?
Only up to level 1 , Use leaf name (uniquify with (#1)/(#2)/...)
Type: a - JSON
a
{"b": [1, 2], "c":"c"}
{"b": [3], "d":null}
Only leaves , Use path with separator . , Expand to columns
Type:
  • a.b.0 , a.b.1 - integer
  • a.c , a.d - string
a.b.0 a.b.1 a.c a.d
1 2 c ?
3 ? ? ?
For nested objects, see the following example:
JSON
{"a":[{"b": 3}, 4]}
{"a":[1]}
Only up to level 1 , Use leaf name (uniquify with (#1)/(#2)/...) , Omit nested objects , Expand to columns :
Type:
  • a - list of integers
a
[4]
[1]
Only up to level 1 or 2 , Use leaf name (uniquify with (#1)/(#2)/...) , do not Omit nested objects , Expand to columns :
Type:
  • a - list of JSON values
a
[{"b": 3}, 4]
[1]
Please note that in the first row the value is a KNIME list of the two JSON values: {"b": 3} and 4 , not a single JSON value, similarly in the second row, you get a KNIME list of a single JSON value: 1 .
Though with Keep as JSON array (regardless of Omit nested objects ):
Type:
  • a - JSON values
a
[{"b": 3}, 4]
[1]

Node details

Input ports
  1. Type: Table
    JSON
    Table containing JSON column.
Output ports
  1. Type: Table
    Extracted values
    Table with values extracted from the selected JSON column.

Extension

The JSON to Table node is part of this extension:

  1. Go to item

Related workflows & nodes

  1. Go to item
    Group 3 GET Request
    Deployment JSON GET Request
    +2
    Solution to a task for Group 3 in KNIME Data Science Learnathon - Retrieve data from a we…
    knime > Education > Learnathons > From_Raw_Data_To_Deployment > Learnathon-Solutions > Group3_Model_Deployment > Group3_GET_Request
  2. Go to item
    Read and parse multi-line JSONs
    Life Sciences JSON Parsing
    +1
    The workflow snippet demonstrates how to read and parse multi-line JSONs. They are first …
    knime > Workflow Snippets > Read and parse multi-line JSONs
  3. Go to item
    Group 3 Call Workflow
    Deployment Scheduling Model
    +5
    Solution to a task for Group 3 in KNIME Data Science Learnathon - Call a workflow stored …
    knime > Education > Learnathons > From_Raw_Data_To_Deployment > Learnathon-Solutions > Group3_Model_Deployment > Group3_Call_Workflow > Group3_Call_Workflow
  4. Go to item
    Call Local Workflow Demo
    JSON Automate Reuse
    This workflow shows how to use the Call Local workflow node, which can execute another wo…
    knime > Examples > 50_Applications > 08_RESTDemo > 01_Call_Local_Workflow
  5. Go to item
    Call Remote Workflow Demo
    Automate Reuse REST
    +1
    Here we demonstrate how a workflow can execute another workflow that is stored on a KNIME…
    knime > Examples > 50_Applications > 08_RESTDemo > 02_Call_a_Workflow_on_a_Server
  6. Go to item
    Init
    Model process Model process factory Enterprise
    Send the model name to the load workflow. This workflow is part of the model factory eco …
    knime > Examples > 50_Applications > 26_Model_Process_Management > Process > Products > workflows > Predict_upOrDown > 01_Init_ModelName
  7. Go to item
    01_Init
    knime > Examples > 50_Applications > 26_Model_Process_Management > Process > _Process_Step_Templates > workflows > Templates > 01_Init
  8. Go to item
    Multiple Reports Child Workflow
    Reporting Child Workflow Called Workflow
    +2
    This is child workflow or called workflow meaning it gets called from another workflow. I…
    ipazin > Public > Multiple Reports > 2020_08_10_Multiple_Reports_Child_Workflow
  9. Go to item
    05_Read_Data_from_Database
    E-learning Database Sqlite
    +1
    E-learning course exercise. Access data on a SQLite database and read it into a local KNI…
    ashrafib > Public > 05_Read_Data_from_Database
  10. Go to item
    APIを使ってみる - Get Request
    Japanese 日本語 Makkynm
    +5
    Get Requestの紹介用Workflowです。 APIを使用する際によく使います。 This workflow is to introduce Get Request
    makkynm > Public > Advanced > A111_GetRequest
  1. Go to item
  2. Go to item
  3. Go to item
  4. Go to item
  5. Go to item
  6. Go to item

KNIME
Open for Innovation

KNIME AG
Hardturmstrasse 66
8005 Zurich, Switzerland
  • Software
  • Getting started
  • Documentation
  • E-Learning course
  • Solutions
  • KNIME Hub
  • KNIME Forum
  • Blog
  • Events
  • Partner
  • Developers
  • KNIME Home
  • KNIME Open Source Story
  • Careers
  • Contact us
Download KNIME Analytics Platform Read more on KNIME Server
© 2022 KNIME AG. All rights reserved.
  • Trademarks
  • Imprint
  • Privacy
  • Terms & Conditions
  • Credits