我们正在尝试从外部源(mssql)将数据提取到postgres。但是,当我检查invoicedate列时,条目将变为空白,同时mssql将显示这些条目的invoicedate值。
ie我们尝试在这两个DBMS上执行以下查询:
在Server中执行查询时:
select * from tablename where salesorder='168490'获取invoicedate列为'2015-10-26 00:00:00.000'的12行
但是在Postgres上执行相同的查询。
select "InvoceDt" from tablename where salesorder='168490'获取12行,其中列invoicedate为空。
问题是为什么?Postgres InvoiceDt列将为null,而不是我们可以看到Server正在显示适当的数据值。
为什么这个特定列的Server和Postgres之间的数据不同?
发布于 2015-11-02 16:55:48
维普斯,你没有使用Postgres,这就是为什么a_horse_with_no_name很难理解你的问题。您正在使用关键的HDB (正式称为HAWQ)。HAWQ现在与孵化器项目"Apache“相关联,商业版本是”关键的HDB“。
Pivotal HDB是关键的格林梅数据库的分叉,它是PostgreSQL 8.2的分支。它与Postgres有许多相似之处,但它绝对不是Postgres。
您还使用Spring将数据从Server移动到HDFS,这对于理解真正的问题是至关重要的。
您提供了以下示例:
CREATE TABLE tablename ( "InvoiceDt" timestamp )
LOCATION ('pxf://hostname/path/to/hdfs/?profile=HdfsTextSimple')
FORMAT 'csv' ( delimiter '^' null 'null' quote '~');你的文件里只有一列?这怎麽可能?上面,你提到了销售订单栏。其次,您是否尝试过查看Spring编写的文件?
hdfs dfs -cat hdfs://hostname:8020/path/to/hdfs | grep 168490我敢打赌,数据中肯定有一个额外的分隔符、空字符或转义字符,从而导致了问题。你也可以用spring来标记你的问题。
https://stackoverflow.com/questions/33431453
复制相似问题