Postgres Copy: добавить символ разделителя в конце строки, если число меньше столбца # - PullRequest
0 голосов
/ 28 октября 2018

Я пытаюсь импортировать много файлов в postgres через PSQL копию.Мои файлы имеют несколько пробелов в качестве разделителя, который я заменил на вкладку:

#!/bin/bash
FILES=$(find /home/ -type f -name '*.csv')
for f in $FILES
do
  sed -i 's/  */\t/g' $f
  sudo -u postgres psql postgres -d testdb -c "copy testdata from '$f' with 
DELIMITER E'\t' CSV" 
done

К сожалению, в последних столбцах есть строки со значениями NULL, которые команда COPY интерпретирует как отсутствующие данные (ОШИБКА: отсутствуетданные для столбца "ca_2").

Именно поэтому я хочу подсчитать количество вкладок в каждой строке в каждом файле, и если оно меньше, чем # columns-1, добавьте отсутствующие вкладки в полеконец.

Не могли бы вы показать мне, как это сделать?Большое спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...