Процедура цикла 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