Об этом инструменте
Инструмент JSON в SQL CREATE TABLE читает JSON-массив объектов (или один объект) и выводит соответствующее определение таблицы SQL, выбирая тип каждого столбца из значений, которые он реально видит. Он работает целиком в вашем браузере — JSON разбирается нативным JSON.parse и никогда не покидает ваше устройство — поэтому вы можете вставить дамп API или экспорт базы данных и создать таблицу в один шаг.
Типы столбцов выводятся по каждому полю на всех строках: значения, которые все являются целыми числами, становятся INT (BIGINT, когда любое значение превышает 2 147 483 647), числа с десятичными дробями становятся DECIMAL(p,s), размерность которого рассчитана по наибольшему числу разрядов целой и дробной частей, указанному вами (или DOUBLE / REAL, когда вы выбираете режим с плавающей точкой), логические значения отображаются на TINYINT(1)/BOOLEAN, строки ISO 8601 отображаются на DATETIME или DATE, вложенные объекты и массивы становятся JSON/JSONB, а остальные строки становятся VARCHAR(N), где N — ближайшая степень двойки выше самого длинного значения (TEXT, как только она превышает 255). Столбец, который в любой строке равен null или отсутствует, остаётся NULLABLE; иначе он NOT NULL. Уникальный, не равный null столбец с именем id или uuid повышается до PRIMARY KEY, с добавлением AUTO_INCREMENT / SERIAL / AUTOINCREMENT для целочисленных ключей.
Переключатель диалекта переписывает типы для MySQL, PostgreSQL (SERIAL, JSONB, TIMESTAMP, DOUBLE PRECISION) или SQLite (аффинности INTEGER / REAL / TEXT) и заключает идентификаторы в правильный разделитель (обратные кавычки для MySQL, двойные кавычки в остальных случаях). Включите опцию INSERT, чтобы также выдать по одному оператору INSERT на строку, со строками, логическими значениями, числами и значениями JSON, экранированными и заключёнными в кавычки для выбранного диалекта.