【问题标题】:Log Parser wrongly displays date '9999-12-31 00:00:00'日志解析器错误地显示日期 '9999-12-31 00:00:00'
【发布时间】:2014-11-23 16:34:46
【问题描述】:

我正在使用日志解析器 2.2 来解析管道分隔文件。我有一列默认日期为“9999-12-31 00:00:00”。日志解析器将此值显示为 '-6385-12-31 00:00:00'

输入文件:Sample.txt

日期|姓名

9999-12-31 00:00:00|蒂姆

查询:Query.sql

从 C:\Sample.txt 中选择 *

C:>logparser -i:TSV -headerRow:on -iSeparator:"|" -fixedSep:ON 文件:Query.sql -o:Datagrid

输出

C:\Sample.txt 2 -6385-12-31 00:00:00 提姆

请帮我解决这个问题。

谢谢,

Sreeraj

【问题讨论】:

    标签: iis logparser


    【解决方案1】:

    LogParser 支持的最大年份约为 3,000 - 我们从未想过 LogParser 会持续这么长时间...

    要解决您的问题,您可能需要使用 CASE 子句将默认日期转换为 NULL。示例:

    SELECT
       Field1,
       Field2,
       CASE TO_STRING(ThatDateField, 'yyyy')
         WHEN '-6385' THEN NULL
         ELSE ThatDateField
       END AS NewDateField,
       ....
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-11
      • 2020-01-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多