首页 > 解决方案 > PostgreSQL:并非返回表中的所有数据

问题描述

我通过 .csv 文件在 pgAdmin 中迁移了一个表。当我在 pgAdmin 中打开表格时,我可以按预期看到所有数据。所以迁移似乎奏效了。

我的问题:
查询表时,大部分数据都没有返回,即使我在 pgAdmin 中看到它们。奇怪的是:当我在 pgAdmin 中手动编辑数据并点击“保存”时,数据会正确返回。

我不知道为什么会这样。谁能帮我解决这个问题?非常感谢!

标签: javascriptpostgresql

解决方案


这是一个示例: select * from "Items" where "category1" = 'English' - 这将返回 0 行
如果您看到此内容,则您的category1字段不包含 value 'English'。你做了一个 csv 导入。您的 CSV 文件中的值可能已经用空格填充。您可以使用以下trim()函数在表中更正:

update "Items" set category1 = trim(both from category1);

这将去掉前导和尾随空格。如果您需要删除其他字符,您可以在您的trim()通话中指定它们。

update "Items" set category1 = trim(both ' chars' from category1);


请参阅文档


推荐阅读