Postgresql 等于检查仅在postgres中的第一列上工作

Postgresql 等于检查仅在postgres中的第一列上工作,postgresql,Postgresql,我在使用postgresql时遇到了一个奇怪的问题。我有一个表,其列为id,data,day\u data。我在提出一个简单的问题 select * from tablename where id = 'someid'; 但是,当我将查询修改为 select * from tablename where day_data = 'somedata'; 这两列都是表的主键,并且都具有chracter variable(255)的数据类型。这是一种非常奇怪的行为,我无法从中看出任何头绪。任何帮助都

我在使用postgresql时遇到了一个奇怪的问题。我有一个表,其列为
id
data
day\u data
。我在提出一个简单的问题

select * from tablename where id = 'someid';
但是,当我将查询修改为

select * from tablename where day_data = 'somedata';

这两列都是表的主键,并且都具有chracter variable(255)的数据类型。这是一种非常奇怪的行为,我无法从中看出任何头绪。任何帮助都将不胜感激

我猜数据值中有尾随空格<代码>修剪()删除尾随空格。一种方法是从tablename中选择“| | | | | day| |””,它将用引号括住每个值,包括前导空格和尾随空格。

您没有说明错误是什么,问题是什么,也没有显示任何示例数据。或输出。没有错误,只是没有选择任何行。这基本上是我表中的数据。你表中的数据基本上是什么?没有错误,只是没有选择任何行。这基本上是我表中的数据。id data day\u data abc count1 day1 bcd count2 day2现在当我从id='abc'的tablename中激发查询选择*时,我得到结果abc count1 day1,但当我从tablename中激发查询选择*时,从day\u data='day1'中没有选择行try
select*从tablename中修剪(day\u data)='day1'
并告诉我们是否得到不同的结果。是的,这似乎正是问题所在。数据是从以前的nosql数据库导入的,有多个空格。