столбец пост-ГРЭС искажает проблему

FFmpeg не записывает в конкретный файл журнала, а скорее отправляет свой вывод на стандартная ошибка . Чтобы захватить это, вам нужно либо

  • захватить и проанализировать его, как он генерируется
  • перенаправить стандартную ошибку в файл и прочитать, что после завершения процесса

Пример перенаправления ошибок std:

ffmpeg -i myinput.avi {a-bunch-of-important-params} out.flv 2> /path/to/out.txt

После завершения процесса вы можете проверить out.txt.

Первый вариант немного сложнее, но это возможно. (Я сделал это сам. Так что и другие. Посмотрите вокруг SO и сеть для деталей.)

11
задан OMG Ponies 29 October 2009 в 18:19
поделиться

3 ответа

В PostgreSQL вы не можете использовать выражения с псевдонимом по порядку. Там работают только простые псевдонимы. Ваш запрос должен выглядеть следующим образом:

   select distinct 
          l2.*, 
          l.user_id as l_user_id, 
          l.geopoint_id as l_geopoint_id 
     from locations l 
left join locations l2 on l.geopoint_id = l2.geopoint_id 
    where l.user_id = 8 
 order by l2.geopoint_id, l.user_id = l2.user_id desc;

Я полагаю, вы имеете в виду, что l2.user_id = l.user_id должен идти первым.

Это релевантное сообщение в общем списке рассылки PostgreSQL. Следующее находится в документации предложения ORDER BY :

Каждое выражение может быть именем или порядковый номер выхода столбец (элемент списка ВЫБРАТЬ) или может быть произвольным выражением, образованным из входных столбцов значений .

Таким образом, никаких псевдонимов при использовании выражения.

16
ответ дан 3 December 2019 в 04:13
поделиться

У вас есть:

order by l2.geopoint_id, l_user_id = l2.user_id desc

в вашем запросе. Это недопустимый синтаксис. Удалите часть = l2.user_id (переместите ее в , где , если это одно из условий соединения), и она должна работать.

Обновление Выберите ниже (с ] = l2.user_id удалено) должно работать нормально. Я тестировал его (очевидно, с разными именами таблиц / столбцов) на Postgres 8.3

select distinct 
       l2.*, 
       l.user_id as l_user_id, 
       l.geopoint_id as l_geopoint_id 
  from locations l 
  left join locations l2 on l.geopoint_id = l2.geopoint_id 
 where l.user_id = 8 
 order by l2.geopoint_id, l_user_id desc
4
ответ дан 3 December 2019 в 04:13
поделиться

"был добавлен, потому что, по-видимому, postgres не любит предложения порядка с невыбранными полями"

"Что касается упорядочивания - да, PostgresQL (и многие другие базы данных) не позволяет упорядочивать столбцы, не перечисленные в предложении select. "

Просто неверно.

=> ВЫБРАТЬ идентификатор ИЗ t1 ORDER BY owner LIMIT 5;

id

30 10 20 50 40 (5 рядов)

1
ответ дан 3 December 2019 в 04:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: