Процедура цикла SQLite для чтения Excel и присвоения значения из одной таблицы в другую

Я пытаюсь написать короткую процедуру SQLite для чтения одной таблицы, сравнить ее с другой таблицей и скопировать значение в эту вторую таблицу. Я работаю в InlineQuerier FME, поэтому чтение файла Excel не является проблемой. Ход процесса:

Row i
    T1(Excel) - read the text in column "NameCode" and compare it to T2.levelname(MicroStation V8)

    Where T2.level_name is like T1.NameCode (i) AND T2.Category is empty or null
        T2.Category=T1.Category. [there will be hundreds of records that meet this requirement]
next i

У меня есть более 1,4 миллиона записей, которые необходимо классифицировать по их корневому имени, и я хочу сохранить список категорий в Excel, чтобы его можно было легко обновлять. Некоторые из этих записей будут соответствовать более чем одному тесту, поэтому мне нужно, чтобы 2-е условие ячейки было пустым. У меня есть таблица Excel в порядке важности. Я очень начинающий SQL, поэтому помощь очень ценится.

1 ответ

Кто-то на сайте FME смог дать мне решение. Я включаю это здесь в случае, если у других есть подобная проблема.

    SELECT
    a.*,
    (
        SELECT "Category" FROM "T2"
        WHERE a."igds_level_name"
            LIKE '%'||replace("NameCode", '_', '@_')||'%' ESCAPE '@'
        ORDER BY "ReadOrder" LIMIT 1
    ) as "Category"
    FROM "T1" as a 
Другие вопросы по тегам