Мой запрос Postgres не работает должным образом - PullRequest
0 голосов
/ 21 мая 2018
select * 
from data_adultdata 
where sex = 'Male' 

когда я не даю пробела перед 'Male', он ничего не возвращает:

select * 
from data_adultdata 
where the sex= ' Male' 

когда я даю пробел перед 'Male', тогдавозвращает правильную запись.

Ответы [ 2 ]

0 голосов
/ 23 мая 2018

Когда вы пытаетесь сопоставить строки, предпочтительно использовать оператор Like:

SELECT * 
FROM data_adultdata 
WHERE sex LIKE '%Male' 

, но Медведь Браун прав, входные данные, кажется, имеют дополнительный символ пробела, поэтомувы не получаете "мужской"

0 голосов
/ 21 мая 2018

Проблема не в Postgres, а в данных, вы можете просто проверить это:

select length('Male') = length(title), length(' Male') = length(title) 
from data_adultdata 
limit 10;
...