Referência:https://dev.mysql.com /doc/refman/5.7/en/json-search-functions.html
Eu sei que este é um thread mais antigo, mas o MySQL 5.7 agora tem um tipo JSON onde você pode importar JSON em um campo, então você pode usar campos calculados para dividir o json em campos separados. Aqui está o código bruto (não testado):
Crie uma tabela de teste JSON:
CREATE TABLE IF NOT EXISTS jsontest(
rowid INT AUTO_INCREMENT NOT NULL UNIQUE,
jsondata json,
`executionDateTime` TIMESTAMP,
`A` BIGINT UNSIGNED,
`B` BIGINT UNSIGNED,
);
Importe seu JSON para o campo JSON:
LOAD DATA LOCAL INFILE '/path/to/testfile.json' into table jsontest(jsondata);
Divida seus dados (isso pode ser combinado em um único comando)
UPDATE jsontest set executionDateTime=(jsondata->>'$.executionDateTime');
UPDATE jsontest set A=(jsondata->>'$.A');
UPDATE jsontest set B=(jsondata->>'$.B');
Se você não quiser ter campos extras, poderá consultar o campo jsondata assim:
SELECT jsondata->>"$.executionDateTime" AS executionDateTime,
jsondata->>"$.A" AS A,
jsondata->>"$.B" AS B;