У меня есть несколько текстовых файлов и таблица базы данных. База данных содержит фиксированное количество записей, а в текстовых файлах больше записей.Сравнение значений в нескольких текстовых файлах и базе данных
Например:
------------ ----------- text1.txt
44-CAT-IV-ОСНОВНОЙ 626518 T19P45
44-CAT-IV-НАРУЖНЫЙ 626522 LB0N08
44-CAT-IV-EXTER 626956 AG8N15
44-CAT-IV-DOUT 626965 PQ7715
------------ ----------- text2.txt
44-CAT-IV-ОСНОВНОЙ 626518 T19P50
44-CAT-IV- OUTER 626522 LB0N08
44-CAT-IV-EXTER 626956 AG8N15
44-CAT-IV-DOUT 626965 PQ2718
Многие файлы, как это ....
база данных выглядит следующим образом:
| | Значение | | Имя-часть | | Версия |
| CAT-IV | | 626518 | | CAT IV CORE | | T19P43 |
| CAT-IV | | 626522 | | CAT IV OUTER | | LB0N08 |
| CAT-IV | | 626956 | | CAT IV EXTER | | AG8N15 |
Я хочу получить имена и значения этих частей из текстовых файлов, значение или версия которых или оба не совпадают в базе данных (только для тех частей, где имя существует в базе данных, например здесь нужно игнорировать CAT-IV-DOUT, как нет в базе данных)
Я попытался загрузить значения базы данных в текстовый файл, а затем сравнить с текстовыми файлами, однако это кажется неэффективным. Есть лучший способ сделать это ?
Почему вы не читали информацию из файлов и их по сравнению с данными в базе данных? Я предполагаю, что ваша база данных - это MYSQL или понравилась и имеет оптимизированные алгоритмы поиска. Вы хотите запускать эти операции с использованием SQL, поскольку у него есть лучшие алгоритмы, чем вы могли бы придумать. – ScarletMerlin
Я попытался подтолкнуть значения базы MYSQL к текстовому файлу, а затем получить две разности между двумя текстовыми файлами, используя: grep -v -f textfile1.txt textfile2.txt> textout.txt – akrish