Введенное значение неверно для вставки - PullRequest
0 голосов
/ 21 апреля 2019

Я вставляю несколько строк данных, каждая с двумя столбцами записи.

Первая строка вставляется правильно (а также если есть только одна строка), но все последующие строки имеют одно неверное значение (sell.min). Это первый столбец первой записи.

Запрос


INSERT INTO market_data.daily (date, locationId, typeId, typeName, sell, buy, totalVolume) VALUES 
("""2019-04-21""", 60003760, 18837, """Corpum C-Type Energized Explosive Membrane""", 
  (6550027.0, 3.999999993E7, 1.44241181091E7, 8428558.23879, 7456719.34645, 14.0, -1.0), 
  (1006502.65, 1555047.05, 1258968.26415, 247301.248151, 1555047.04377, 13.0, -1.0), 
-1.0), 
("""2019-04-21""", 60003760, 33281, """Capital Drone Durability Enhancer I""", 
  (5.199989895E7, 5.1999999E7, 5.1999973063E7, 57.7494660851, 5.199989895E7, 3.0, -1.0), 
  (5000000.02, 4.199999091E7, 3.05050486484E7, 1.47204376114E7, 4.1999990902E7, 7.0, -1.0),
  -1.0), 
("""2019-04-21""", 60003760, 49979, """'Absolute' Injection Augmentor""", 
  (3000000.0, 9.999999999E7, 6.37555555511E7, 4.87653907276E7, 3000000.0, 3.0, -1.0), 
  (10.01, 10.01, 10.01, 0.01, 10.01, 1.0, -1.0), 
-1.0), 
("""2019-04-21""", 60003760, 18839, """Centum C-Type Energized Explosive Membrane""", 
  (3999999.84, 2.999999996E7, 1.8556233027E7, 6729883.37456, 3999999.84057, 15.0, -1.0), 
  (1006989.98, 3500001.98, 1791680.30288, 936471.377223, 3500001.98, 10.0, -1.0), 
-1.0), 
("""2019-04-21""", 60003760, 14262, """Dark Blood Stasis Webifier""", 
  (1.1069999996E7, 2.4523999696E7, 1.35810174441E7, 3.26196555149E7, 1.10699999963E7, 18.0, -1.0), 
  (97842.98, 1.0179234021E7, 8.88308106524E7, 2.47111060358E7, 1.01792340196E7, 24.0, -1.0),
-1.0);

Схема таблицы


date    STRING  REQUIRED    
locationId  INTEGER REQUIRED    
typeId  INTEGER REQUIRED    
typeName    STRING  REQUIRED    
sell    RECORD  REQUIRED    
sell. min   NUMERIC REQUIRED    
sell. max   NUMERIC REQUIRED    
sell. average   NUMERIC REQUIRED    
sell. stdDev    NUMERIC REQUIRED    
sell. percentile    NUMERIC REQUIRED    
sell. orderCount    NUMERIC REQUIRED    
sell. volume    NUMERIC NULLABLE    
buy RECORD  REQUIRED    
buy. min    NUMERIC REQUIRED    
buy. max    NUMERIC REQUIRED    
buy. average    NUMERIC REQUIRED    
buy. stdDev NUMERIC REQUIRED    
buy. percentile NUMERIC REQUIRED    
buy. orderCount NUMERIC REQUIRED    
buy. volume NUMERIC NULLABLE    
totalVolume NUMERIC NULLABLE

Результат

Изображение результата

Насколько я могу судить, значения

sell.min, за исключением первого, являются низкими значениями, которые не имеют никакого отношения к чему-либо еще в запросе. Они не всегда целые.

Это происходит при выполнении запроса из веб-интерфейса или API Java.

1 Ответ

1 голос
/ 22 апреля 2019

Используйте ниже вместо

#standardSQL
INSERT INTO market_data.daily (date, locationId, typeId, typeName, sell, buy, totalVolume) VALUES 
("""2019-04-21""", 60003760, 18837, """Corpum C-Type Energized Explosive Membrane""", 
  STRUCT<min NUMERIC, max NUMERIC, average NUMERIC, stdDev NUMERIC, percentile NUMERIC, orderCount NUMERIC, volume  NUMERIC>(6550027.0, 3.999999993E7, 1.44241181091E7, 8428558.23879, 7456719.34645, 14.0, -1.0), 
  STRUCT<min NUMERIC, max NUMERIC, average NUMERIC, stdDev NUMERIC, percentile NUMERIC, orderCount NUMERIC, volume  NUMERIC>(1006502.65, 1555047.05, 1258968.26415, 247301.248151, 1555047.04377, 13.0, -1.0), 
-1.0), 
("""2019-04-21""", 60003760, 33281, """Capital Drone Durability Enhancer I""", 
  STRUCT<min NUMERIC, max NUMERIC, average NUMERIC, stdDev NUMERIC, percentile NUMERIC, orderCount NUMERIC, volume  NUMERIC>(5.199989895E7, 5.1999999E7, 5.1999973063E7, 57.7494660851, 5.199989895E7, 3.0, -1.0), 
  STRUCT<min NUMERIC, max NUMERIC, average NUMERIC, stdDev NUMERIC, percentile NUMERIC, orderCount NUMERIC, volume  NUMERIC>(5000000.02, 4.199999091E7, 3.05050486484E7, 1.47204376114E7, 4.1999990902E7, 7.0, -1.0),
  -1.0), 
("""2019-04-21""", 60003760, 49979, """'Absolute' Injection Augmentor""", 
  STRUCT<min NUMERIC, max NUMERIC, average NUMERIC, stdDev NUMERIC, percentile NUMERIC, orderCount NUMERIC, volume  NUMERIC>(3000000.0, 9.999999999E7, 6.37555555511E7, 4.87653907276E7, 3000000.0, 3.0, -1.0), 
  STRUCT<min NUMERIC, max NUMERIC, average NUMERIC, stdDev NUMERIC, percentile NUMERIC, orderCount NUMERIC, volume  NUMERIC>(10.01, 10.01, 10.01, 0.01, 10.01, 1.0, -1.0), 
-1.0), 
("""2019-04-21""", 60003760, 18839, """Centum C-Type Energized Explosive Membrane""", 
  STRUCT<min NUMERIC, max NUMERIC, average NUMERIC, stdDev NUMERIC, percentile NUMERIC, orderCount NUMERIC, volume  NUMERIC>(3999999.84, 2.999999996E7, 1.8556233027E7, 6729883.37456, 3999999.84057, 15.0, -1.0), 
  STRUCT<min NUMERIC, max NUMERIC, average NUMERIC, stdDev NUMERIC, percentile NUMERIC, orderCount NUMERIC, volume  NUMERIC>(1006989.98, 3500001.98, 1791680.30288, 936471.377223, 3500001.98, 10.0, -1.0), 
-1.0), 
("""2019-04-21""", 60003760, 14262, """Dark Blood Stasis Webifier""", 
  STRUCT<min NUMERIC, max NUMERIC, average NUMERIC, stdDev NUMERIC, percentile NUMERIC, orderCount NUMERIC, volume  NUMERIC>(1.1069999996E7, 2.4523999696E7, 1.35810174441E7, 3.26196555149E7, 1.10699999963E7, 18.0, -1.0), 
  STRUCT<min NUMERIC, max NUMERIC, average NUMERIC, stdDev NUMERIC, percentile NUMERIC, orderCount NUMERIC, volume  NUMERIC>(97842.98, 1.0179234021E7, 8.88308106524E7, 2.47111060358E7, 1.01792340196E7, 24.0, -1.0),
-1.0);   

Это быстрый и "грязный" трюк, который позволит вам двигаться вперед со своими вставками

Как видите - здесь - я только что добавил явное определение полей

STRUCT<min NUMERIC, max NUMERIC, average NUMERIC, stdDev NUMERIC, percentile NUMERIC, orderCount NUMERIC, volume  NUMERIC>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...