Глядя на ваш код, я предполагаю, что вы фактически очищаете лист (clearContents()
) каждый раз, когда получаете результаты базы данных.
Если вы хотите sh изменить это поведение и избегать использования clearContents()
, вам необходимо обновить оператор SQL, чтобы исключить все уже извлеченные order_id
.
Если у вас не слишком много записей, вы можете просто расширить свое заявление SQL, включив в него предложение NOT IN
, которое исключит все записи, имеющиеся у вас на листе.
В качестве альтернативы, если ваша переменная order_id
упорядочена (ожидаемое увеличение или уменьшение), вы можете использовать предложение BETWEEN
, используя min order_id
и max order_id
в вашей электронной таблице.
Если все предыдущие варианты для вас недопустимы, вы можете взять все записи в выписке SQL и затем проверить Apps Script , если запись уже была вставлена ранее, но на этом этапе вы в основном выполняете ту же работу, что и раньше, потому что вам нужно будет проверять каждую отдельную запись, извлеченную из базы данных.
Хотя Если вы можете, вы можете создать столбец / таблицу в базе данных SQL для хранения всех уже вставленных записей, так что вы можете просто извлечь все не вставленные записи в одну заявление.